spring profile 与maven profile

profile:

n.  侧面,半面; 外形,轮廓; [航]翼型; 人物简介;
vt.  描…的轮廓; 给…画侧面图; 为(某人)写传略; [机]铣出…的轮廓;

这个词具体是什么意思,参考:https://www.zhihu.com/question/28464897

我的理解,就是一个配置。

一、spring中的profile

 profile 说白了就是利用一个变量来控制加载哪些bean。主要用在实现在不同的环境下加载不同的bean。

比如在测试环境下,加载根据这个数据库的配信息生成的bean,在生产环境下使用另一个bean。

简单用法:

将spring-profile-test.xml和spring-profile-dev.xml都import入主配置文件中,但是由于spring.profile.active的值不同,真正加载的bean也不同(不满足profile值的bean不会被加载,此时相当于import了一个空文件)

在运行的使用配置下面参数来激活test环境需要加载的bean,profile的值可以有多个,测试需要用“,”隔开。

-Dspring.profiles.active=tet

当然profile还有其他激活方法,如:

  1. DispatcherServlet的初始化参数传入
  2. web app上下文参数传入
  3. JNDI入口
  4. 环境变量
  5. JVM系统属性
  6. @ActiveProfiles

二、maven中的profile

猜你喜欢

转载自my.oschina.net/zhzx/blog/1824218