- spring profile (spring-boot 아님)
https://www.baeldung.com/spring-profiles


- profile expression (5.1 이상)
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/env/Profiles.html#of-java.lang.String...-


http://jdm.kr/blog/81
https://dayone.me/1R2Zz7p

@Configuration
@Profile({"default", "production"}) => default는 설정 값이 없는 경우
public class ProductionConfiguration {


- jvm property (,로 여러개 설정 가능)
-Dspring.profiles.active=dev,profile2

- web.xml에 설정
<context-param>
<param-name>spring.profiles.active</param-name>
<param-value>dev</param-value>
</context-param>


- java -options 이용
java -Dspring.profiles.active=prd -jar ./~.jar

export JAVA_OPTS=" $JAVA_OPTS -Dspring.profiles.active=prd"
OR
export CATALINA_OPTS=" $CATALINA_OPTS -Dspring.profiles.active=prd"

- unix에서 사용
export spring_profiles_active=dev

http://blog.naver.com/PostView.nhn?blogId=sipzirala&logNo=220993470653&categoryNo=0&parentCategoryNo=0&viewDate=&currentPage=1&postListTopCurrentPage=1&from=postView

http://jdm.kr/blog/81

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-profiles.html

https://www.lesstif.com/pages/viewpage.action?pageId=18220309


- 소스에서 profile 값 가져오기
@Autowired
private Environment environment;

String[] arr = environment.getActiveProfiles();
for(String str : arr) {
logger.debug("getEnv value is {}", str);
}
===================================================================================================
- Profile에 따라 선별적 Bean 등록
@Component
or
@Configuration
@Profile({"default", "dev", "test"})

@Profile("local & !redis")
& |로 조건 설정 가능

- Profile 설정
1. annotation 이용
@ActiveProfile({"dev", "test"})

===================================================================================================

'spring' 카테고리의 다른 글

엑셀 업로드 & 다운로드  (0) 2018.07.02
메일 보내기  (0) 2018.06.15
@PathVariable  (0) 2018.03.21
master/slave 이중화 설정시 환경설정 및 프로그램  (0) 2017.11.14
스프링3.x와 스프링4.x 변경된 점  (0) 2017.08.08
Posted by 張's blog
,