Java springboot 整合 Nacos的實(shí)例代碼
1)工程添加依賴包
<!-- nacos注冊(cè)中心依賴包 --><dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><!-- 監(jiān)控檢查--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId></dependency>
2)nacos-web工程添加配置文件bootstrap.yml
spring: application: name: nacos-web cloud: nacos: discovery:server-addr: 127.0.0.1:8848server: port: 9100#健康檢查management: endpoints: web: exposure:include: '*'
3)nacos-web工程添加啟動(dòng)類
@SpringBootApplication@EnableDiscoveryClientpublic class NacosWebApplication { public static void main(String[] args) {SpringApplication.run(NacosWebApplication.class,args); }}
4)nacos-web工程新建InfoController
@RestControllerpublic class InfoController { @Value('${server.port}') private String port; @Value('${key:’’}') private String key; @GetMapping(value = '/echo/{message}') public String echo(@PathVariable(value = 'message') String message) {return 'Hello Nacos Discovery ' + message + ', i am from port ' + port; } @GetMapping(value = '/config') public String config() {return 'Hello Nacos Config get '+key ; }}
5)啟動(dòng)服務(wù)并查看效果
6)編輯配置內(nèi)容
7)啟動(dòng)項(xiàng)目訪問(wèn)工程
☆ 動(dòng)態(tài)刷新☆
Nacos Config Starter 默認(rèn)為所有獲取數(shù)據(jù)成功的 Nacos的配置項(xiàng)添加了監(jiān)聽(tīng)功能,在監(jiān)聽(tīng)到服務(wù)端配置發(fā)生變化時(shí)會(huì)實(shí)時(shí)觸發(fā)org.springframework.cloud.context.refresh.ContextRefresher 的 refresh方法 。
如果需要對(duì) Bean 進(jìn)行動(dòng)態(tài)刷新,參照 Spring 和 Spring Cloud 規(guī)范。推薦給類添加 @RefreshScope進(jìn)行自動(dòng)刷新
發(fā)布新配置
接受到了新配置
8)多環(huán)境支持
為不同的環(huán)境編寫專門的配置文件,可以通過(guò)切換profiles的參數(shù)來(lái)實(shí)現(xiàn)
測(cè)試環(huán)境 test
開(kāi)發(fā)環(huán)境 dev
生產(chǎn)環(huán)境 prod
--spring.profiles.active=環(huán)境名稱
9) Nacos實(shí)現(xiàn)多配置
nacos可以同時(shí)支持多環(huán)境配置。只需要在nacos配置中心中根據(jù)dataId進(jìn)行區(qū)分即可。dataId 完整的拼接格式如下
在 Nacos Config Starter 中,dataId 完整的拼接格式如下
${prefix}-${spring.profiles.active}.${file-extension} prefix 默認(rèn)為spring.application.name 的值,也可以通過(guò)配置項(xiàng)spring.cloud.nacos.config.prefix來(lái)配置。 spring.profiles.active 即為當(dāng)前環(huán)境對(duì)應(yīng)的profile file-extension 為配置內(nèi)容的數(shù)據(jù)格式,可以通過(guò)配置項(xiàng)spring.cloud.nacos.config.file-extension來(lái)配置。 目前只支持 properties 類型。
10)修改bootstrap.yml
spring: profiles: active: dev #開(kāi)發(fā)環(huán)境 application: name: nacos-web cloud: nacos: discovery:server-addr: 127.0.0.1:8848 config:server-addr: 127.0.0.1:8848file-extension: yml #后綴prefix: nacos-web #前綴server: port: 9100
11)nacos中新增配置信息
當(dāng)前開(kāi)發(fā)環(huán)境為dev時(shí)
12)不同應(yīng)用間配置信息共享Nacos中新建common.yml
修改nacos-web工程配置文件,添加
spring: application: name: nacos-web cloud: nacos: discovery:server-addr: 192.168.200.128:8848 config:server-addr: 192.168.200.128:8848file-extension: yml #指定文件擴(kuò)展名,默認(rèn)為propertiesprefix: nacos-web#添加共享配置的dataId,如多個(gè)使用逗號(hào)分隔,并且越靠后,優(yōu)先級(jí)越高#文件后綴名不能少,只支持yaml,yml,properiesshared-dataids: common.yml#哪些共享配置支持動(dòng)態(tài)刷新,如多個(gè)使用逗號(hào)分隔refreshable-dataids: common.yml profiles: active: dev #開(kāi)發(fā)環(huán)境server: port: 9100management: endpoints: web: exposure:include: '*'#日志logging: level: org.springframework.web: debug
到此這篇關(guān)于Java springboot 整合 Nacos的文章就介紹到這了,更多相關(guān)Java springboot 整合 Nacos內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. vue實(shí)現(xiàn)web在線聊天功能2. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis3. JavaScript實(shí)現(xiàn)頁(yè)面動(dòng)態(tài)驗(yàn)證碼的實(shí)現(xiàn)示例4. Springboot 全局日期格式化處理的實(shí)現(xiàn)5. Java使用Tesseract-Ocr識(shí)別數(shù)字6. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問(wèn)題7. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼8. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)9. 在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn)10. 解決Android Studio 格式化 Format代碼快捷鍵問(wèn)題
