나중에 잊어먹기 전에 Spring에서 properties를 사용하는 방법 정리
user.properties는 기본으로 load
system은 [loc, dev]에 따라서 선택적으로 load (java args -D 옵션으로)
1. -D옵션
local, dev환경에 따라서 java(또는 WAS) 실행 시 -Denv=[loc,dev]로 구분하여 실행
java -Denv=loc java -Denv=dev
2. properties 파일
user.properties #sample spring.version=3.1.1
system.loc.properties #LOCAL JDBC driverClassName=org.apache.derby.jdbc.ClientDriver url=jdbc:derby://127.0.0.1:8133/derby_local username=loc password=loc
system.dev.properties #DEV JDBC driverClassName=org.apache.derby.jdbc.ClientDriver url=jdbc:derby://127.0.0.1:8133/derby_dev username=dev password=dev
3. context-properties.xml
properties의 id="config"로 하고
spel에 의해 #{systemProperties['env']} 부분이 -Denv 에서 넣은 값으로 변환되어 properties 파일이 매핑된다.
classpath:user.properties classpath:system.#{systemProperties['env']}.properties
4. XML에서 사용
context-properties.xml에서 설정한 "config"라는 이름으로 spel을 사용해서 properties 값 매핑
5. Class에서 사용
@Value와 spel을 사용해서 값 매핑
import org.springframework.beans.factory.annotation.Value; public class PropTest { @Value("#{config['spring.version']}") private String springVersion;
'프로그래밍 > 스프링' 카테고리의 다른 글
jasypt 암호화 properties 적용 (0) | 2013.08.05 |
---|---|
-D옵션으로 web.xml에서 선택적인 *.xml 로딩 (0) | 2013.08.03 |