尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
HoRain云--Spring Boot 配置管理进阶:多环境、加密、动态刷新与配置中心
本文讲解 Spring Boot 配置管理包括 profile、外部化配置、Jasypt 加密、Nacos 配置中心和动态刷新。正文1. 配置文件优先级命令行 环境变量 application-{profile}.yml application.yml。2. 多环境配置yaml复制下载# application.yml spring: profiles: active: dev --- spring: config: activate: on-profile: dev server: port: 8080 --- spring: config: activate: on-profile: prod server: port: 80或分文件application-dev.yml、application-prod.yml。3. 外部化配置bash复制下载java -jar app.jar --spring.config.location/etc/app/ java -jar app.jar --server.port9090环境变量bash复制下载export SPRING_DATASOURCE_URLjdbc:mysql://...4. ConfigurationPropertiesjava复制下载ConfigurationProperties(prefix app) Component public class AppProperties { private String name; private int timeout; private ListString hosts; // getter/setter }配合EnableConfigurationProperties或ConfigurationPropertiesScan。5. 敏感信息加密 Jasyptxml复制下载运行dependency groupIdcom.github.ulisesbocchio/groupId artifactIdjasypt-spring-boot-starter/artifactId version3.0.5/version /dependency加密bash复制下载java -cp jasypt.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI \ inputmypassword passwordmasterkey algorithmPBEWithMD5AndDES配置yaml复制下载spring: datasource: password: ENC(密文) jasypt: encryptor: password: ${JASYPT_PASSWORD}6. Nacos 配置中心xml复制下载运行dependency groupIdcom.alibaba.cloud/groupId artifactIdspring-cloud-starter-alibaba-nacos-config/artifactId /dependencyyaml复制下载spring: config: import: nacos:app.yaml cloud: nacos: config: server-addr: localhost:8848 file-extension: yaml7. 动态刷新java复制下载RefreshScope Component public class DynamicConfig { Value(${app.timeout}) private int timeout; }Nacos 修改配置后自动刷新。8. 配置监听java复制下载NacosConfigListener(dataId app.yaml) public void onChange(String config) { // 处理变更 }9. 常见坑profile 未激活。配置优先级混淆。密钥硬编码。动态刷新与单例 Bean 状态冲突。10. 总结配置管理要区分环境、保护敏感信息、支持动态刷新。本地用 profile Jasypt分布式用 Nacos/Apollo。
RELATED

相关推荐

一个.class文件是怎么被JVM跑起来的?类加载机制+双亲委派一篇讲透

一个.class文件是怎么被JVM跑起来的?类加载机制+双亲委派一篇讲透

一个 .class 文件是怎么被 JVM 跑起来的?类加载机制 双亲委派一篇讲透 你写的 Java 代码编译成 .class 之后,JVM 到底对它做了什么,才能让它真正跑起来? 为什么静态代码块只执行一次?为什么你自己写一个 java.lang.St…

📅 2026/9/25 20:26:49
网盘资源管理实战:从EVA剧场版收藏到跨平台文件同步与备份

网盘资源管理实战:从EVA剧场版收藏到跨平台文件同步与备份

1. 从一部剧场版动画说起:为什么老片子的资源管理值得单独聊《EVA新世纪福音战士剧场版:终》这部片子,对很多动漫爱好者来说不只是一部电影,它更像是一个跨越二十多年的句号。2021年上映之后,围绕它的讨论从剧情解读延…

📅 2026/9/25 20:21:49
Docker容器化部署物联网平台:从开发到生产的完整流程

Docker容器化部署物联网平台:从开发到生产的完整流程

物联网平台容器化的必要性 2026年,工业物联网项目的一个显著变化是部署形态从"单机部署"转向"容器化集群部署"。当你的物联网平台需要同时处理MQTT消息路由、时序数据存储、可视化看板、告警引擎和API网关时,传统的一台服务器装所有…

📅 2026/9/25 20:21:49
MORE NEWS

更多资讯

📰

PL/SQL Developer免Oracle客户端实战配置指南

简介:PLSQL Developer是一款专为Oracle数据库设计的集成开发环境,这份免安装版本省去了完整Oracle客户端的部署步骤,解压即可运行,适合追求轻量化环境的数据库开发、运维及测试人员,也适合在受限网络或快速交付场景下使…

📰

多功能在线报价系统开发实战:PHP+MySQL实现从数据表到PDF导出

简介:多功能在线报价系统源码是一套基于ASP与SQL数据库的Web应用,面向需要在线询价、报价管理的企业或个人开发者,系统围绕产品、品牌、分类、账户与报价记录五大模块构建,支持动态价格调整、批量折扣、订单跟踪、支付整合及简单的…

📰

Cocos Creator回合制战斗系统:调度器与状态机设计实战

简介:CocoKnightManager 是一套基于 Cocos Creator 的开源回合制游戏系统设计,面向希望快速搭建回合制战斗框架的开发者与学习者。它围绕模块化与数据驱动思路,将回合管理器、行动规则引擎、状态机等核心组件拆分实现,帮助解决回合…

📰

Substrate 区块链开发实战:从模块化架构到 Pallet 开发与升级

1. 从零认识 Substrate:它到底是什么,能解决什么问题第一次听到 Substrate 这个词,很多人会以为是某个前端框架或者构建工具,其实它是一套用于构建区块链底层网络的开发框架。你可以把它理解成“区块链世界的操作系统内核”——它…

📰

CRMEB 标准版系统(Java)v3.2 公测版发布

CRMEB 标准版系统(Java)v3.2 公测版发布!此次,v3.2主要围绕真实使用过程中的关键环节进行了集中优化:部署更省事了:两个部署包合并成一个JAR,一个文件就能启动;后台接入AI MCP能力&a…

📰

嵌入式驱动开发到底忙啥?设备树与内核宏实战解析

1. 被问“你一天到晚到底在忙啥”时,我该怎么回答“嵌入式驱动开发忙啥咧”——这句话我第一次听到,是家里亲戚问的。当时我正对着串口日志调一个 I2C 触摸屏的 probe 失败问题,头也没抬地回了一句“就是让硬件能跑起来”。对方一脸茫然&…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬