SpringBoot学习笔记(3)----SpringBoot的profile多环境配置
在实际的应用开发中,可能会需要不同配置文件来支撑程序的运行,如开发,测试,预生产,生产环境等,程序在不同的环境下可能需要不同的配置,如不同数据源等,如果每次在不同的环境下都要去修改配置文件就会闲得不合理,而且很麻烦,此时就可以通过配置profiles,使程序在不同的环境中使用不同的配置文件。
1. properties文件配置方式
这种方式是将通用的配置到application.properties中,在application.properties中使用spring.profiles.active=xxx来指定某环境。每个不同环境的配置文件的命名方式为application-xxx.properties.其中spring.profiles.active=xxx的xxx与application-xxx.properties文件名的xxx必须一致。xxx就是表示是某个环境,程序会自动去读取application-xxx.properties中的配置文件信息。
示例:
application.properties
spring.profiles.active=dev
server.port=8080
application-dev.properties
server.port=8082
启动项目查看日志:
2018-10-11 15:54:59.672 INFO 7752 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8082 (http) with context path ''
2018-10-11 15:54:59.684 INFO 7752 --- [ restartedMain] c.w.boot.SpringBootDemo02Application : Started SpringBootDemo02Application in 2.504 seconds (JVM running for 4.081)
可以看出项目的端口是8082,使用的是application-dev.properties配置的端口,而不是application.properties中的8080.
2. yaml文件配置方式
application.yaml
server:port: 8080spring:profiles:active: dev
---spring:profiles: dev
server:port: 8082
yaml文件中,直接使用---符号,就可以进行多环境配置了,如上,使用了dev的环境,启动后端口仍然是8082。
yaml配置文件的优势是,不用冗余多个文件,只需要一个文件就可以了,而且代码风格简洁,优雅,层次分明,但是不能使用@PropertySource()注解,所以如果需要使用@PropertySource()的话,需要使用application.properties.
原文 SpringBoot学习笔记(3)----SpringBoot的profile多环境配置
转载于:https://www.cnblogs.com/xiaoshen666/p/10843921.html
SpringBoot学习笔记(3)----SpringBoot的profile多环境配置相关推荐
- SpringBoot学习笔记(4)----SpringBoot中freemarker、thymeleaf的使用
1. freemarker引擎的使用 如果你使用的是idea或者eclipse中安装了sts插件,那么在新建项目时就可以直接指定试图模板 如图: 勾选freeMarker,此时springboot项目 ...
- SpringBoot学习笔记(9)----SpringBoot中使用关系型数据库以及事务处理
在实际的运用开发中,跟数据库之间的交互是必不可少的,SpringBoot也提供了两种跟数据库交互的方式. 1. 使用JdbcTemplate 在SpringBoot中提供了JdbcTemplate模板 ...
- SpringBoot学习笔记(16)----SpringBoot整合Swagger2
Swagger 是一个规范和完整的框架,用于生成,描述,调用和可视化RESTful风格的web服务 http://swagger.io Springfox的前身是swagger-springmvc,是 ...
- 【Springboot学习笔记】SpringBoot+Mybatis+Thymeleaf+Layui数据表单从零开始实现按条件模糊分页查询的方法
[Springboot学习笔记]SpringBoot+Mybatis+Thymeleaf+Layui数据表单从零开始实现按条件模糊分页查询的方法 目录 1.搭建环境 1.1直接从网上下载SpringB ...
- SpringBoot学习笔记-2:第二章 Spring Boot 配置
第二章 Spring Boot 配置 1.YAML 配置 SpringBoot 全局配置文件 application.properties application.yml YAML 以数据为中心,比 ...
- Spring Boot基础学习笔记05:Spring Boot多环境配置
文章目录 零.学习目标 1.掌握使用Profile文件进行多环境配置 2.掌握使用@Profile注解进行多环境配置 3.熟悉随机值设置以及参数间引用 一.项目进行多环境配置的必要性 二.使用Prof ...
- springboot学习笔记-5 springboot整合shiro
shiro是一个权限框架,具体的使用可以查看其官网 http://shiro.apache.org/ 它提供了很方便的权限认证和登录的功能. 而springboot作为一个开源框架,必然提供了和sh ...
- 【OpenGL学习笔记①】——openGL flew flgw flut 环境配置 + 绘制出Hello World
该文章旨在帮助 计算机图形学 openGL 初学者快速安装和配置 openGL的环境(包括glew和glfw,还有glut[进阶]),并手把手指导如何绘制出第一句 "Hello Worl ...
- Python学习笔记(0):开发环境配置
开发环境 操作系统 Ubuntu16.04 由于Ubuntu下自带Python,所以无需安装,可以在终端直接输入命令python来查看Python的版本,我的电脑上是2.7.10. 安装ipython ...
- Z3 SMTsolver 学习笔记(一) ——安装,环境配置篇
https://github.com/Z3Prover/z3 源文件从这里可以下载.然后看看readMe文件. Windows7下使用Visual Studio 命令符建立Z3 着急的兄弟可以直接跳到 ...
最新文章
- c的开始,求最大数。
- 【计算机网络】关于分组交换和电路交换及其时延的讨论
- Python基础之数据类型(一)
- phpAmin如何导入导出大数据文件?
- 【博客美化】08.添加扩大/缩小浏览区域大小 按钮
- 静态时序分析——Data to data check
- JAXB自定义绑定– Java.util.Date / Spring 3序列化
- SQLIntegrityConstraintViolationException: 异常解决
- CSS 实现行内和上下自适应的几种方法
- python获取绝对路径_Python 获取文件路径及文件目录
- 泛泰android phone下载,这里泛泰手机全系列驱动和刷机临时RECVOVERY下载,自测全部好用...
- WORD之文字处理之页眉页脚的设置
- 一键端服务器维护,游戏服务器一键端
- SLCP验厂辅导,发布网关是SLCP系统中用于数据托管和共享的关键角色
- php逐个汉字遍历字符串
- bim的二次开发需要什么语言_CAD二次开发语言简介
- python高级应用_Python高级应用程序设计任务
- JavaEE学习日志(七十三): 黑马商城项目(六)
- 阿里云服务器关闭mysql数据库_mysql - 阿里云服务器数据库自动关闭,怎么解决...
- android签名方法,Android : apk系统签名的多种方法