技术标签: spring boot java tomcat maven
常用的几种激活profile的方式
spring.profiles.active=test
spring.profiles.active=@spring.profiles.active@
maven中加入<profiles>
<profile>
<id>dev</id>
<properties>
<spring.profiles.active>dev</spring.profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<spring.profiles.active>test</spring.profiles.active>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<spring.profiles.active>prod</spring.profiles.active>
</properties>
</profile>
</profiles>
打包时执行以下命令,或者 mvn package -Ptest
IDEA右边直接勾选要选择的环境 java -jar app.jar --spring.profiles.active=dev
或者IDEA具体使用哪个环境由服务器决定,通过在服务器(例如Tomcat)上的启动脚本里增加:-Dspring.profiles.active=prod来决定使用哪个环境。
优点是不再需要上线测试、生产时手动改环境了,只需要打一个包就可以在所有环境运行,可以避免因打错包或部署错包造成的一系列问题。
这是我项目启动Tomcat的脚本的配置,通过在启动脚本里指定要环境,可以动态选择要启动哪种配置文件
具体maven配置和上述第二种差不多,先在maven配置profile
<build>
<resources>
<resource>
<!-- 指定配置文件所在的resource目录 -->
<directory>src/main/resources</directory>
<includes>
<include>public/**</include>
<include>static/**</include>
<include>templates/**</include>
<!-- 选择要打包的配置文件和日志,当然也可以不加打包所有配置文件,然后由具体服务器来选择使用哪个 -->
<include>application-${spring.profiles.active}.yml</include>
<include>logback-${spring.profiles.active}.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
<profiles>
<profile>
<id>dev</id>
<properties>
<spring.profiles.active>dev</spring.profiles.active>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<spring.profiles.active>test</spring.profiles.active>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<spring.profiles.active>prod</spring.profiles.active>
</properties>
</profile>
</profiles>
配置文件变成如下格式
文章浏览阅读2k次,点赞27次,收藏28次。任务描述我们在编程过程中会用到很多函数,但我们不需要每个函数都自己去编写,因为 Python 内置了很多十分有用的函数,我们在编程过程中可以直接调用。本关目标是让学习者了解并掌握一些常用的 Python 内置函数的用法。相关知识数学运算abs()类型转换bool()序列操作all():判断可迭代对象的每个元素是否都为True:判断可迭代对象的元素是否有为True:对可迭代对象进行排序,返回一个新的列表。对象操作help():返回对象的帮助信息;dir():返回对象或者当前作用域内的属性列表。_函数调用头歌
文章浏览阅读245次。Linux下API编程不像Windows一样,对每种设备和不同功能都有统一的API,所以有了《Windows核心编程》这种导论一类的大而全的书籍,整本书厚的像一块砖头。Linux下贯彻了一贯的“一切皆文件”的宗旨,所以对于系统编程而言,整体API算是非常少了。网上有很多大佬做过很多分析总结,或者参考《Linux系统高级编程》,很快就能大概得到整体概览。
文章浏览阅读949次,点赞2次,收藏3次。嵌入式Linux-IMX6ULL开发环境配置_imx6 linux 开发
文章浏览阅读992次,点赞4次,收藏2次。$bitset$是一个类似于bool数组的结构,可以看作一个有多位的二进制数,支持位运算操作,在状压DP等题目中可以使用。用$bitset$可以大大降低常数。_bitset可以用=吗
文章浏览阅读1.5k次,点赞3次,收藏8次。有大佬这样解决java在pta交不了的问题:PTA上提交Java程序的一些套路参考题目集二中和日期相关的程序,设计一个类DateUtil,该类有三个私有属性year、month、day(均为整型数),其中,year∈[1820,2020] ,month∈[1,12] ,day∈[1,31] , 除了创建该类的构造方法、属性的getter及setter方法外,需要编写如下方法:public boolean checkInputValidity();//检测输入的年、月、日是否合法public bool_7-1 计算天数pta
文章浏览阅读3.8w次,点赞17次,收藏53次。查看所用的源:$ sudo vim /etc/apt/sources.list 由于安装的Ubuntu Server 16.04.1 LTS是英文版的,软件源就默认都是 us.archive.ubuntu.com(英国) 的,所以很慢。# deb cdrom:[Ubuntu-Server 16.04.1 LTS _Xenial Xerus_ - Release amd64 (..._agt-get下载
文章浏览阅读189次。什么是预处理?成熟的数据库都支持预处理语句(Prepared Statements)的概念。它们是什么东西?你可以把它们想成是一种编译过的要执行的SQL语句模板,可以使用不同的变量参数定制它。预处理语句具有两个主要的优点:1 查询只需要被解析(或准备)一次,但可以使用相同或不同的参数执行多次。当查询准备好(Prepared)之后,数据库就会分析,编译并优化它要执行查询的计划。对于复杂查询来说,如果..._使用pdo预处理方式操作数据库
文章浏览阅读54次。2019独角兽企业重金招聘Python工程师标准>>> ..._[gc (system.gc()) 23046k->21242k(49152k), 0.0016373 secs] [full gc (system.g
文章浏览阅读5.7w次,点赞104次,收藏657次。雅可比(Jacobi)迭代法解线性方程组的Matlab实现迭代法解线性方程组的基本思想是构造一串收敛到解的序列,即建立一种从已有近似解计算新的近似解的规则,有不同的计算规则得到不同的迭代法。本文是常用的迭代法之一:Jacobi迭代法解线性方程组的matlab实现。关于Jacobi迭代法的具体内容和算法见《数值计算方法》—丁丽娟,P65-66程序中所用算法和书中的一致。输入量有以下6个..._matlab雅可比迭代法解线性方程组
文章浏览阅读1.8k次。下面是一个简单的例子,用于把文档里的 ”hello" 替换成 "world" ' Define the search range to be the whole document Set myRange = ActiveDocument.Content ' Set the Find parameters myRange.Find.C_mac word中vba的使用
文章浏览阅读989次。如何设置wifi定位服务器地址 内容精选换一换华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。本节操作以“Windows Server 2012 R2 数据中心版 64位”操作系统为例,介绍如何通过Microsoft Remote Desktop客户端登录Windows实例。云服务器状态为“运行中”..._wifi 位置服务器
文章浏览阅读1.2k次。欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 《Java 核心知识整理&面试.pdf》资源链接!!个人网站: https://www.exception.site/essay/elasticsearch-sync-index-read-only-allow-delete目录一、背景二、题外话三、开始排查四、为什么索引处于只读状态呢..._es indics block exception