好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

springboot配置文件读取pom文件信息方式

配置文件读取pom文件信息

解决的问题

springboot(当然别的也可以)多环境切换需要修改配置文件硬编码,打包时不够方便。

解决

配置文件能读取pom文件中的配置,根据命令选择不同配置注入springboot的配置文件中

pom配置文件:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

<!-- 环境 -->

     < profiles >

         <!-- 开发 -->

         < profile >

             < id >dev</ id >

             < activation >

                 <!--默认激活配置,maven打包默认选用的配置-->

                 < activeByDefault >true</ activeByDefault >

             </ activation >

             < properties >

                 <!--当前环境自定义配置,标签名自定义-->

                 < profile.name >dev</ profile.name >

                 < profile.baseUrl >http://localhost:5501</ profile.baseUrl >

             </ properties >

         </ profile >

        

         <!-- 测试 -->

         < profile >

             < id >test</ id >

             < properties >

                 <!--当前环境-->

                 < profile.name >test</ profile.name >

                 < profile.baseUrl >http://test.xxxx测试数据/xxx</ profile.baseUrl >

             </ properties >

         </ profile >

         <!-- 生产 -->

         < profile >

             < id >prd</ id >

             < properties >

                 <!--当前环境,生产环境为空-->

                 < profile.name >prd</ profile.name >

                 < profile.baseUrl >http://api.xxx.cn/xxx</ profile.baseUrl >

             </ properties >

         </ profile >

     </ profiles >

修改后的写法

当然,别的配置项也能这样写,这样写的好处是只需修改一处别的不用修改

maven打包命令

mvn clean package -Ptest 这样就能打成测试环境的包了

可能会出现的一些问题

占位符也可以这样写 @配置的key@,不建议这样使用 报@@ 解析错误,再次执行打包命令: mvn clean package -Ptest 修改了pom文件中的配置,再次启动项目环境没有变化,因为ide启动的是你之前的包所以你要重新使用打包命令打个新包

Pom文件依赖配置说明

1、groupId、artifactId、version是依赖的基本坐标,缺一不可,其它两个坐标元素不指定时将采用默认值

type :依赖的类型,对应坐标packaging,默认为jar optional :标记依赖是否可选,A->B->C,那么当A依赖于C时就可以设为可选。 exclusions :排除传递依赖

scope 依赖范围

compile :编译范围,默认scope,在classpath中存在 provided :已提供范围,比如容器提供Servlet API runtime :运行时范围,编译不需要,接口与实现分离 test :测试范围,单元测试环境需要 system :系统范围,自定义构件,指定systemPath import :导入依赖

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

原文链接:https://blog.csdn.net/ityqing/article/details/102704960

查看更多关于springboot配置文件读取pom文件信息方式的详细内容...

  阅读:34次