最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot項目與Nacos配置全過程

 更新時間:2024年11月28日 15:07:07   作者:小喬努力變強  
本文介紹了如何在SpringBoot項目中使用Nacos作為配置中心,實現(xiàn)動態(tài)配置管理和實時更新配置的能力,通過配置命名空間和yml文件,創(chuàng)建SpringBoot項目并添加Nacos依賴,編寫Controller和啟動類,配置Tomcat啟動程序,最終在Nacos服務(wù)端注冊成功

Spring Boot是一個開發(fā)Java應(yīng)用程序的框架,而Nacos是一個用于配置管理和服務(wù)發(fā)現(xiàn)的開源平臺。

在Spring Boot項目中使用Nacos作為配置中心,可以實現(xiàn)動態(tài)配置管理和實時更新配置的能力。

一、Nacos服務(wù)端配置命名空間和yml文件

注意:建議大家以自己的名字全拼命名,防止大家搞混

yml 與properties文件區(qū)別?

YML(YAML)和Properties文件是兩種常見的配置文件格式,用于存儲應(yīng)用程序或系統(tǒng)的配置信息。

它們有以下區(qū)別:

  • 語法結(jié)構(gòu):YML使用縮進和冒號來表示層級關(guān)系,而Properties文件使用鍵值對的形式表示配置項。
  • 可讀性:YML文件使用縮進和結(jié)構(gòu)化的語法,因此更易于閱讀和理解。相比之下,Properties文件使用簡單的鍵值對結(jié)構(gòu),可讀性較差。
  • 復(fù)雜性:YML文件支持更復(fù)雜的數(shù)據(jù)結(jié)構(gòu),如列表、嵌套對象等,可以更靈活地表示配置信息。Properties文件只支持簡單的鍵值對,不支持復(fù)雜數(shù)據(jù)結(jié)構(gòu)。
  • 擴展性:YML文件可以輕松地添加注釋,以及處理更復(fù)雜的配置需求。Properties文件不支持注釋,且在處理復(fù)雜配置時可能變得冗長和難以維護。
  • 應(yīng)用場景:YML文件適用于需要更復(fù)雜結(jié)構(gòu)和層級關(guān)系的配置信息,例如Spring Boot應(yīng)用程序的配置文件。Properties文件適用于簡單的鍵值對配置,常用于Java應(yīng)用程序的配置文件。

二、創(chuàng)建SpringBoot項目

在Idea中左上角選擇【File】,右擊選擇【New】,右擊選擇【Project】

此處我們要建立的是SpringBoot項目,在左邊的列表中選擇【Spring Initializer】,填寫項目的名稱,配置jdk版本,此處根據(jù)自己的實際需要進行配置即可,完成之后點擊【Next】

展開【W(wǎng)eb】下拉列表,勾選上【Spring Web】,完成后點擊【Finish】

項目創(chuàng)建成功之后我們會發(fā)現(xiàn)會有很多文件夾和文件,我們只需要留下【pom.xml】文件即可,其余文件我們暫時用不到可以先刪除

在父pom.xml中添加spring boot,spring cloud,spring cloud alibaba三個依賴

<dependencyManagement>
  <dependencies>
    <!--spring boot,spring cloud,spring cloud alibaba-->
    <!--選用官網(wǎng)穩(wěn)定的版本-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-dependencies</artifactId>
      <version>2.3.12.RELEASE</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>

    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-dependencies</artifactId>
      <version>Hoxton.SR12</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>

    <dependency>
      <groupId>com.alibaba.cloud</groupId>
      <artifactId>spring-cloud-alibaba-dependencies</artifactId>
      <version>2.1.2.RELEASE</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

修改父pom.xml中配置的SpringBoot版本

可能會出現(xiàn)版本不兼容的問題,我們在這里將SpringBoot版本修改為【2.3.12.RELEASE】

三、創(chuàng)建子服務(wù)

這時候我們要新建兩個子服務(wù)

點擊項目名【NacosInstance】右擊選擇【New】,右擊選擇【Module】

要創(chuàng)建兩個子服務(wù)都是普通的Maven項目,所以這里我們選擇【Maven】就可以,完成后點擊【Next】

輸入新創(chuàng)建服務(wù)的名稱和地址,完成后點擊【Finish】

此時項目中就多了一個名叫order-Service的服務(wù),我們?yōu)樾绿砑拥姆?wù)配置nacos依賴,點擊進入oser-service服務(wù)的【pom.xml】文件

<dependencies>
        <!-- nacos服務(wù)注冊/發(fā)現(xiàn)-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--nacos配置中心來做配置管理-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
</dependencies>

在order-Service子服務(wù)的src文件夾中,選擇【resources】右擊新建一個yml配置文件,并進行nacos的配置

server:
  port: 9000
  servlet:
    context-path: /order-Service
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 152.136.111.77:5555
        namespace: 10ecded1-361f-45d7-a009-ad2355304ff5
      config:
        server-addr: 152.136.111.77:5555
        namespace: 10ecded1-361f-45d7-a009-ad2355304ff5
        prefix: order
        file-extension: yml
  application:
    name: order

四、Controller編寫

在order-Service服務(wù)中按照下圖的格式新建兩個文件,分別為啟動類和請求類

在【OrderController】類中編寫請求的邏輯代碼

package order.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/placeOrder")
@Controller
public class OrderController {
    @GetMapping("/order")
    public String placeOrder(){
        return "已下單";
    }
}

在【OrderServiceApplication】類中編寫程序啟動邏輯

package order;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@SpringBootApplication
@EnableDiscoveryClient
public class OrderServiceApplication {
    public static void main(String[] args) {
        SpringApplication.run(OrderServiceApplication.class, args);
    }
}

五、Tomcat啟動程序

配置成功

此時,我們再次在瀏覽器中打開Nacos服務(wù)端,點擊【服務(wù)列表】,我們配置的order-Service服務(wù)就注冊成功啦??!

總結(jié)

通過以上步驟,就可以在Spring Boot項目中使用Nacos作為配置中心,并實現(xiàn)動態(tài)配置管理。

在Nacos中更新配置后,應(yīng)用程序?qū)⒆詣荧@取最新的配置值。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring?Boot?集成PageHelper的使用方法

    Spring?Boot?集成PageHelper的使用方法

    這篇文章主要介紹了Spring?Boot?集成PageHelper的使用方法,文章內(nèi)容圍繞主題展開詳細介紹,需要的小伙伴可以參考一下,希望對你的學習有所幫助
    2022-04-04
  • SpringMVC?RESTFul實現(xiàn)列表功能

    SpringMVC?RESTFul實現(xiàn)列表功能

    這篇文章主要為大家介紹了SpringMVC?RESTFul實現(xiàn)列表功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Java中JSON字符串反序列化(動態(tài)泛型)

    Java中JSON字符串反序列化(動態(tài)泛型)

    文章討論了在定時任務(wù)中使用反射調(diào)用目標對象時處理動態(tài)參數(shù)的問題,通過將方法參數(shù)存儲為JSON字符串并進行反序列化,可以實現(xiàn)動態(tài)調(diào)用,然而,這種方式容易導(dǎo)致內(nèi)存溢出(OOM),這篇文章主要介紹了JSON字符串反序列化?動態(tài)泛型,需要的朋友可以參考下
    2024-12-12
  • maven實現(xiàn)jar包導(dǎo)入+導(dǎo)出方式

    maven實現(xiàn)jar包導(dǎo)入+導(dǎo)出方式

    這篇文章主要介紹了maven實現(xiàn)jar包導(dǎo)入+導(dǎo)出方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • 如何使用Maven管理項目?Maven管理項目實例

    如何使用Maven管理項目?Maven管理項目實例

    下面小編就為大家?guī)硪黄绾问褂肕aven管理項目?Maven管理項目實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Java8 Comparator排序方法實例詳解

    Java8 Comparator排序方法實例詳解

    這篇文章主要介紹了Java8 Comparator排序方法實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • JAVA ArrayList詳細介紹(示例)

    JAVA ArrayList詳細介紹(示例)

    本文對JAVA ArrayList做了詳細介紹,文中學到了ArrayList源碼解析、ArrayList遍歷方式、toArray()異常,最后給出了ArrayList示例。
    2013-11-11
  • springboot中非容器類如何獲取配置文件數(shù)據(jù)

    springboot中非容器類如何獲取配置文件數(shù)據(jù)

    這篇文章主要介紹了springboot中非容器類如何獲取配置文件數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Springboot中的三個基本架構(gòu)

    Springboot中的三個基本架構(gòu)

    這篇文章主要介紹了Springboot中的三個基本架構(gòu),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • SpringBoot高級配置之臨時屬性、配置文件、日志、多環(huán)境配置詳解

    SpringBoot高級配置之臨時屬性、配置文件、日志、多環(huán)境配置詳解

    這篇文章主要介紹了SpringBoot高級配置之臨時屬性、配置文件、日志、多環(huán)境配置,本文結(jié)合實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02

最新評論

沐川县| 来安县| 绥宁县| 民丰县| 定日县| 巴马| 五指山市| 周口市| 清河县| 神木县| 遵义市| 吴忠市| 台前县| 平塘县| 盐山县| 大渡口区| 利川市| 灵寿县| 衡阳县| 永靖县| 江都市| 冕宁县| 老河口市| 剑阁县| 怀安县| 云安县| 茶陵县| 鸡东县| 明星| 辽阳市| 锦州市| 宁波市| 明溪县| 浑源县| 车险| 富锦市| 含山县| 正蓝旗| 寿阳县| 宜丰县| 敖汉旗|