springCloud集成nacos config的過程
本文介紹spring cloud集成nacos config的過程。
0、環(huán)境
- jdk 1.8
- maven 3.8.1
- Idea 2021.1
- nacos 2.0.3
1、項(xiàng)目結(jié)構(gòu)
根項(xiàng)目nacos-config-sample下有兩個(gè)module,這兩個(gè)module分別是兩個(gè)springboot項(xiàng)目,都從nacos中獲取連接mysql的連接參數(shù)。我們開工。
2、添加nacos-config-sample依賴
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.2</version> </parent> <!--兩個(gè)module,新增module時(shí),idea會(huì)自動(dòng)生成,手動(dòng)加可以--> <modules> <module>service-a</module> <module>service-b</module> </modules> <properties> <nacos.config.version>2021.1</nacos.config.version> <spring.bootstrap.version>3.0.1</spring.bootstrap.version> </properties> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>${nacos.config.version}</version> </dependency> <!--用于讀取bootstrap文件--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> <version>${spring.bootstrap.version}</version> </dependency> <!--jpa--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
3、新增service-a
新增service-a,打卡pom.xml,看一下maven繼承關(guān)系是否正取,代碼如下:
<parent> <artifactId>nacos-config-sample</artifactId> <groupId>com.jackie.nacos.config.sample</groupId> <version>1.0-SNAPSHOT</version> </parent>
如果繼承關(guān)系沒錯(cuò),下來添加springboot啟動(dòng)類,代碼如下:
@SpringBootApplication public class ServiceaApplication { public static void main(String[] args) { ConfigurableApplicationContext context = SpringApplication.run(ServiceaApplication.class, args); String info = context.getEnvironment().getProperty("info"); System.out.println(info); } }
我在這里添加了測試代碼。下面添加bootstrap.yml文件,內(nèi)容如下:
spring: application: name: nacos-config-sample-service-a cloud: nacos: config: # nacos的連接地址 server-addr: localhost:8848 # nacos config的dataId,如果不配置,默認(rèn)讀取application.name prefix: example namespace: dev file-extension: yml
再添加application.yml,內(nèi)容如下:
server: port: 9080
service-a搭建完成,要測試的話,大家可以先把根服務(wù)中的jpa依賴先注釋掉,否則啟動(dòng)不起來。因?yàn)閟ping自動(dòng)裝配,會(huì)去找數(shù)據(jù)庫連接池,再找mysql的連接信息。而此時(shí)我們還沒配置呢。咱們放到最后再配置。
4、service-b搭建
sevice-b搭建過程與service-a基本類似,唯一不同的是,記得把服務(wù)端口改一下,其他保持一致即可。
#application.yml server: port: 9081
5、nacos config配置
登錄nacos,進(jìn)入配置管理,新增配置。Data ID:example.yml,Group: DEFAULT_GROUP,類型選擇yml,配置內(nèi)容按如下內(nèi)容輸入:
disableCouponRequest:true spring: datasource: username: root password: 123456 url: jdbc:mysql://127.0.0.1:3306/my_coupon?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true&zeroDateTimeBehavior=convertToNull&serverTimezone=UTC type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver hikari: pool-name: StrasCouponHikari connection-timeout: 5000 idle-timeout: 30000 maximum-pool-size: 10 minimum-idle: 5 max-lifetime: 60000 auto-commit: true
保存即可。
6、測試
現(xiàn)在我們分別啟動(dòng)兩個(gè)服務(wù),并查看日志,如果正常連接了mysql,說明我們的配置成功了。當(dāng)然前提是你必須有對(duì)應(yīng)的數(shù)據(jù)庫,并且用戶名、密碼正確。
第一個(gè)紅框表示正常加載了jpa,第二個(gè)紅框說訂閱了我們剛才新增的配置。好了,就到這里吧,享受你的探險(xiǎn)之旅吧。加油,架構(gòu)師們。
到此這篇關(guān)于springCloud集成nacos config的文章就介紹到這了,更多相關(guān)springCloud集成nacos config內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringCloud-Nacos服務(wù)注冊與發(fā)現(xiàn)方式
- SpringCloud連接不上遠(yuǎn)程N(yùn)acos問題排查
- springcloud nacos的賦值均衡和動(dòng)態(tài)刷新
- Alibaba?SpringCloud集成Nacos、openFeign實(shí)現(xiàn)負(fù)載均衡的解決方案
- SpringCloud Nacos集群搭建過程詳解
- SpringCloud及Nacos服務(wù)注冊IP選擇問題解決方法
- springcloud+nacos實(shí)現(xiàn)灰度發(fā)布示例詳解
- springCloud集成nacos啟動(dòng)時(shí)報(bào)錯(cuò)原因排查
- Spring Cloud Nacos配置管理方案
相關(guān)文章
SpringBoot接受參數(shù)相關(guān)注解方式
SpringBoot接受參數(shù)的注解包括@PathVariable、@RequestHeader、@RequestParameter、@CookieValue、@RequestBody、@RequestAttribute和@SessionAttribute等,每個(gè)注解都有詳細(xì)的使用方法和示例代碼2024-12-12java后臺(tái)調(diào)用HttpURLConnection類模擬瀏覽器請(qǐng)求實(shí)例(可用于接口調(diào)用)
這篇文章主要介紹了java后臺(tái)調(diào)用HttpURLConnection類模擬瀏覽器請(qǐng)求實(shí)例,該實(shí)例可用于接口調(diào)用,具有一定的實(shí)用價(jià)值,需要的朋友可以參考下2014-10-10Java數(shù)據(jù)結(jié)構(gòu)之選擇排序算法的實(shí)現(xiàn)與優(yōu)化
選擇排序:(Selection?sort)是一種簡單直觀的排序算法,也是一種不穩(wěn)定的排序方法。本文主要為大家介紹一下選擇排序的實(shí)現(xiàn)與優(yōu)化,希望對(duì)大家有所幫助2023-01-01Spring中@ConfigurationProperties的用法解析
這篇文章主要介紹了Spring中@ConfigurationProperties的用法解析,傳統(tǒng)的Spring一般都是基本xml配置的,后來spring3.0新增了許多java config的注解,特別是spring boot,基本都是清一色的java config,需要的朋友可以參考下2023-11-11IntelliJ IDEA 2019.1.1 for MAC 下載和注
這篇文章主要介紹了IntelliJ IDEA 2019.1.1 for MAC 下載和注冊碼激活,教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04SpringBoot應(yīng)用整合ELK實(shí)現(xiàn)日志收集的示例代碼
這篇文章主要介紹了SpringBoot應(yīng)用整合ELK實(shí)現(xiàn)日志收集的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09Java ES(Elasticsearch) 中的and 和 or 查
Elasticsearch 是一個(gè)分布式、高擴(kuò)展、高實(shí)時(shí)的搜索與數(shù)據(jù)分析引擎,es中match查詢中,查詢字符串分詞后,默認(rèn)是or或者的關(guān)系,這篇文章主要介紹了ES 中的and 和 or 查詢,需要的朋友可以參考下2022-11-11