알이즈웰

property 사용 본문

Programming/SPRING

property 사용

2017. 7. 18. 17:46


Spring에서 텍스트를 프로퍼티로 만들어서 사용하는 방법


사용 이유는 Java단에서 자주 쓰는 URL이나 문자열을 프로퍼티로 저장해서 써먹으려고 하는 것이당.


예를 들면 아래와 같이 써먹고 싶은거임.



// ... String url = configProperties.deliveryTrackingUrl;

//http://yodurumi.tistory.com/tracking
// ...



해야할 일은


1. properties파일을 생성하여 원하는 값들을 정의한다.

2. 설정 xml 파일에 해당 프로퍼티 파일을 선언한다.

3. controller단 혹은 써먹고 싶은 파일에 선언하여 써먹는다.


1. 프로퍼티파일명.properties

delivery.tracking.url=http://yodurumi.tistory.com/tracking



2. 설정XML파일명.xml

<util:properties id="comm" location="classpath:/config/${spring.profiles.active}/common.properties">



3. 사용하고자 하는 java파일

//아래와 같이 선언 후 써먹으면됨
@Value("#{comm['delivery.tracking.url']}")
public String deliveryTrackingUrl;
//...
String url = configProperties.deliveryTrackingUrl;




* 참고

위 프로퍼티 파일 경로 중 ${spring.profiles.active}는 운영, 개발 등 한 프로젝트 소스를 여러 버전으로 관리할 경우 현재 작업중인 버전으로 설정하여 개발하기 위해 넣은 것이다.


예를 들면, common.properties의 각 프로퍼티가 개발서버와 로컬에서 적용하여 쓰는 값이 다를 경우 local버전의 프로퍼티 파일과 개발버전의 프로퍼티 파일을 다르게 관리할 것이므로, 로컬에서 개발을 진행할때에는 JVM 변수 spring.profiles.active를 로컬 경로명으로 설정하여 작업한다.


- spring.profiles.active 설정


- 버전별 properties파일 예시


참고

http://stove99.tistory.com/152

http://blog.bagesoft.com/908








* 추가

view단에서 프로퍼티를 사용하고 싶다면!

jsp에서 선언 후 아래와 같이 써먹으면 된다.


//선언
<spring:eval expression="@comm" var="config" scope="request"/>

//사용
function preview(id){
	var URL = "<spring:eval expression="@comm['delivery.tracking.url']"/>/test.do";
}


참고

http://shonm.tistory.com/376





'Programming > SPRING' 카테고리의 다른 글

[SpringBatch] Job별 Redis class 설정  (0) 2021.07.12
Comments