SpringCloud2023集成Nacos2.4.3

基本都是最新版,踩了两天的坑终于集成上了,实现了多环境配置。使用版本----关键应用版本备注Java21Oracle OpenJDK 21.0.5Spring Boot3.2.4Spring Cloud2023.0.1Spring Cloud Alibaba2023.0.1.3Nacos2.4.3单机模式nacos安装-------我学习过程使用的是windows环境,从GitHub的nacos主页下载对应的zip包。解压,修改字符编码的配置。到KaTeX parse error: Double superscript at position 545: ...40 | : ' '̲; | / ...{spring-boot.version} pom import org.springframework.cloud spring-cloud-dependencies spring−cloud.version</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring−cloud−alibaba−dependencies</artifactId><version>{spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>spring−cloud.version</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring−cloud−alibaba−dependencies</artifactId><version>{spring-cloud-alibaba.version} pom import org.springframework.boot spring-boot-maven-plugin org.projectlombok lombok Spring Cloud集成nacos-------------------application.xml配置: # SpringBoot Configuration server: port: 8080 spring: profiles: # 此处可为空,为空和default等价 # 通过修改active的值来修改运行的环境配置 active: dev # 应用名可以自定义 application: name: micro-service01 # 使用字符串填充的方式设置要读取的配置 config: import: - nacos:spring.cloud.nacos.config.prefix.{spring.cloud.nacos.config.prefix}.spring.cloud.nacos.config.prefix.{spring.cloud.nacos.config.file-extension}?refreshEnabled=true - nacos:spring.cloud.nacos.config.prefix−{spring.cloud.nacos.config.prefix}-spring.cloud.nacos.config.prefix−{spring.profiles.active}.${spring.cloud.nacos.config.file-extension}?refreshEnabled=true cloud: nacos: # nacos的ip、登录账号以及密码可统一设置,或者在 config以及discovery中单独设置 username: nacos password: nacos server-addr: 127.0.0.1:8848 # config设置要读取的nacos配置 config: enabled: true namespace: learn-cloud # 设置要读取的nacos配置的格式 file-extension: yaml prefix: micro-service # discovery设置服务被发现的设置,比如此处设置服务在learn-cloud的命名空间被发现 discovery: namespace: learn-cloud register-enabled: true management: endpoint: health: show-details: always endpoints: web: exposure: include: "" logging: level: com.alibaba.cloud.nacos.configdata: debug 在Spring Boot启动类获取一下使用的环境配置,然后修改spring.profiles.active的值来验证一下是否成功切换配置。 / * @EnableDiscoveryClient 开启服务注册发现的功能 */ @SpringBootApplication @EnableDiscoveryClient public class MicroService01Application { public static void main(String\[\] args) throws InterruptedException { ConfigurableApplicationContext applicationContext = SpringApplication.run(MicroService01Application.class, args); while (true) { String userName = applicationContext.getEnvironment().getProperty("User.name"); String userAge = applicationContext.getEnvironment().getProperty("User.age"); //获取当前部署的环境 String currentEnv = applicationContext.getEnvironment().getProperty("current.env"); String currentConfig = applicationContext.getEnvironment().getProperty("current.config"); System.err.println("in "+currentEnv+" environment; "+"Config:"+ currentConfig +"; Username :" + userName + "; Age: " + userAge); TimeUnit.SECONDS.sleep(1); } } }

相关推荐
SL_staff5 分钟前
从RBAC到场景化授权:《无忧·企业文档》三级权限模型的技术实践解析
java·开源·产品
传奇开心果编程1 小时前
【springboot基础语法学与练】第 1 课:从零开始
java·spring boot·后端·学习
SL_staff1 小时前
财务系统慎用低代码?从数据模型闭环看合规落地的技术实践
java·低代码·全栈
滕州市燕猫虎计算机科技工作室个体工商户1 小时前
IDEA:Command line is too long
java·ide·intellij-idea
步行cgn2 小时前
Spring p 命名空间注入详解
java·前端·spring
YatHinLay2 小时前
MyBatis 流式查询实战:ResultHandler 处理海量数据
java
天天被压力2 小时前
【跨市场数据实战 #08】可转债折价机会怎么筛:3个接口抓比价、列表和实时盘口
java·人工智能·python
张某布响丸辣3 小时前
附件下载的安全边界:路径白名单、NAS 哨兵文件与 Redis Lua 一次性令牌
java·redis·redis lua·nas哨兵
YatHinLay3 小时前
Spring Boot + Calcite 实现跨库查询
java
酷炫码神4 小时前
MosMos 创意效果与能力边界展示
java