春季可使用概要绝对程序在不同环境下执行情况,包含配置,加载Bean,依赖等。
Spring的配置文件一般项目包含:dev(开发),测试(单元测试),qa(集成测试),刺激(生产环境)。由spring.profiles。活动属性绝定启用的配置文件。
SpringBoot的配置文件默认为application.properties(或yaml,此外仅心属性配置为说明)。不同配置下的配置文件由应用程序——{概要}。属性管理,同时独立的剖面配置文件会覆盖默认文件下的属性。
Maven同样也有概要设置,可在构建过程中针对不同的轮廓环境执行不同的操作,包含配置,依赖,行为等。
由pom Maven的概要文件。xml的& lt; Profiles>标签管理。每个概要文件中可设置:id(唯一标识),属性(配置属性),激活(自动触发的逻辑条件),依赖关系(依赖)等。
此文章不对春天和Maven的剖面作过多说明,详细情况请自行查阅。
<强> 强>
由于构建是基于Maven(或Gradle,此处仅以Maven说明)。所以使用Maven管理春天构建时的概要文件是非常方便的。
Maven管理春天概要文件分五步,以下详细介绍。
<强> 3.1去掉默认的Tomcat依赖强>
在SpringBoot MVC项目中,默认以内嵌Tomcat运行,如果需要特殊的设置或者使用暗潮,需要去掉默认的Tomcat依赖:
& lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-web & lt; exclusions> & lt; exclusion> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-tomcat & lt;/exclusion> & lt;/exclusions> & lt;/dependency>
如果你同时使用了MyBatis,需要去掉tomcat jdbc依赖:
& lt; dependency> & lt; groupId> org.mybatis.spring.boot & lt; artifactId> mybatis-spring-boot-starter & lt; exclusions> & lt; exclusion> & lt; groupId> org.apache.tomcat & lt; artifactId> tomcat-jdbc & lt;/exclusion> & lt;/exclusions> & lt;/dependency>
<强> 3.2 Maven概要设置强>
在项目(如果有模块为具体模块)的pom.xml下设置:
& lt; !春天,Maven控制概要——比; & lt; profiles> & lt; profile> & lt; id> dev & lt; activation> & lt; activeByDefault> true & lt;/activation> & lt; properties> & lt; profileActive> dev & lt;/properties> & lt; dependencies> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-tomcat & lt;/dependency> & lt; dependency> & lt; groupId> org.apache.tomcat & lt; artifactId> tomcat-jdbc & lt;/dependency> & lt;/dependencies> & lt;/profile> & lt; profile> & lt; id> prod & lt; properties> & lt; profileActive> prod & lt;/properties> & lt;/profile> & lt;/profiles>
从上面的配置可以看的出,Maven的剖面配置了两个:开发和产品化,并且在dev中使用了内嵌Tomcat,而刺激中没有,所以这两个配置文件打包的文件开发可以直接运行(插件使用了SpringBoot插件),而刺激并不能直接运行(或部署在外部Tomcat下,并不推荐这样,后面会说明)。
属性中的profileActive是我们申明的属性,此处对应Spring的配置文件值。
<强> 3.3 Maven资源过滤强>
SpringBoot的概要文件选择需要在应用程序中。属性中配置,如果定死在文件,那么每次打包都需要手动修改,很麻烦,而且容易出错。
Maven的资源过滤功能可以实现在构建时修改以“@xxx@”表示的属性。资源过滤需要在pom.xml的& lt; build>标签下配置资源:
& lt; !——配置文件对资源的操作——比; & lt; resources> & lt; resource> & lt; directory> src/main/resources & lt; excludes> & lt; exclude>应用程序* .properties & lt;/excludes> & lt;/resource> & lt; resource> & lt; directory> src/main/resourcesMaven管理SpringBoot资料详解