介绍

Spring Profiles 提供了一套隔离应用配置的方式,不同的 profiles 提供不同组合的配置,在不同的环境中,应用在启动时通过选择激活某些特定的 profiles 来适应运行时环境,以达到在不同的环境可以使用相同的一套程序代码。
环境
@Profiles
你可以在任何 @Component(@Service,@Repository) 或 @Configuration 注解标注的类中使用 @Profiles 注解:
public interface PaymentService {
String createPaymentQrcode();
}
@Service
@Profile("alipay")
public class AlipayService implements PaymentService {
@Override
public String createPaymentQrcode() {
return "支付宝支付二维码";
}
}
@Service
@Profile({"default", "wechatpay"})
public class WechatpayService implements PaymentService {
@Override
public String createPaymentQrcode() {
return "微信支付二维码";
}
}
在 Spring Boot 中,默认的 profile 是 default,因此,PaymentService.createPaymentQrcode() -> 微信支付二维码。
你可以通过 spring.profiles.active 来激活某个特定 profile:
java -jar -Dspring.profiles.active='alipay' xxx.jar
PaymentService.createPaymentQrcode() -> 支付宝支付二维码。
多环境配置
在Spring Boot 中,多环境配置文件可以使用 application-{profile}.{properties|yml} 的方式。
@Component
@ConfigurationProperties("jdbc")
public class JdbcProperties {
private String username;
private String password;
// getters and setters
}
开发环境 application-dev.properties 配置:
jdbc.username=root jdbc.password=123654
生产环境 application-prod.properties 配置:
jdbc.username=produser jdbc.password=16888888
或:
开发环境 application-dev.yml 配置:
jdbc: username: root password: 123654
生产环境 application-prod.yml 配置:
jdbc: username: produser password: 16888888
或:
只使用 application.yml,并在此文件中通过 --- 分隔符创建多 profile 配置:
app: version: 1.0.0 spring: profiles: active: "dev" --- spring: profiles: dev jdbc: username: root password: 123654 --- spring: profiles: prod jdbc: username: produser password: 16888888
命令行启动:
java -jar -Dspring.profiles.active=prod xxxx.jar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Spring
# Boot
# Profiles配置
# Profiles
# springboot yml中profiles的巧妙用法(小白必看多环境配置)
# 使用spring.profiles.active来分区配置的方法示例
# Spring Boot配置特定属性spring.profiles的方法
# Spring Boot 2.4配置特定环境时spring: profi
# 你可以
# 可以使用
# 支付宝
# 在此
# 用在
# 命令行
# 配置文件
# 启动时
# 大家多多
# 类中
# 分隔符
# 以达到
# Configuration
# pre
# Repository
# PaymentService
# alipay
# Service
# class
# Profile
相关文章:
建站主机与虚拟主机有何区别?如何选择最优方案?
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
如何通过主机屋免费建站教程十分钟搭建网站?
电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?
如何用搬瓦工VPS快速搭建个人网站?
如何通过VPS建站无需域名直接访问?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
广德云建站网站建设方案与建站流程优化指南
小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建
导航网站建站方案与优化指南:一站式高效搭建技巧解析
Python路径拼接规范_跨平台处理说明【指导】
威客平台建站流程解析:高效搭建教程与设计优化方案
,网站推广常用方法?
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
学校为何禁止电信移动建设网站?
建站之星如何通过成品分离优化网站效率?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
重庆网站制作公司哪家好,重庆中考招生办官方网站?
一键网站制作软件,义乌购一件代发流程?
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
网站制作网站,深圳做网站哪家比较好?
Android滚轮选择时间控件使用详解
建站之星图片链接生成指南:自助建站与智能设计教程
建站之星如何实现五合一智能建站与营销推广?
如何选择CMS系统实现快速建站与SEO优化?
江苏网站制作公司有哪些,江苏书法考级官方网站?
网站制作壁纸教程视频,电脑壁纸网站?
如何快速搭建高效简练网站?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
建站之星后台密码遗忘或太弱?如何重置与强化?
用v-html解决Vue.js渲染中html标签不被解析的问题
建站之星如何修改网站生成路径?
香港网站服务器数量如何影响SEO优化效果?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
制作电商网页,电商供应链怎么做?
如何配置WinSCP新建站点的密钥验证步骤?
如何快速搭建FTP站点实现文件共享?
免费视频制作网站,更新又快又好的免费电影网站?
如何选择高性价比服务器搭建个人网站?
如何在万网主机上快速搭建网站?
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
C#怎么使用委托和事件 C# delegate与event编程方法
免费网站制作appp,免费制作app哪个平台好?
建站主机选购指南与交易推荐:核心配置解析
如何在云主机上快速搭建网站?
沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?
洛阳网站制作公司有哪些,洛阳的招聘网站都有哪些?
临沂网站制作公司有哪些,临沂第四中学官网?
*请认真填写需求信息,我们会在24小时内与您取得联系。