티스토리 뷰


  1   외부설정 프로퍼티



 외부에 프로퍼티 파일을 생성하고 스프링에서 사용할 정보를 따로 관리 할 수가 있다. 한가지 예로 자바 JDBC의 경우 DB의 종류에 따라 코딩을 다르게 해야하며, 한번 변경한 코드는 재컴파일 해야 사용을 할 수가 있게된다. 하지만 외부의 프로퍼티 파일을 생성하고 사용함으로서 프로퍼티파일의 수정을 통하여 컴파일 없이 변경된 정보를 프로젝트에 그대로 반영할 수 있는 장점이 있다





  2   외부 프로퍼티파일



위의 프로퍼티 파일은 스프링에서 사용할 datasource 빈 객체의 JDBC 정보이다. 이 파일을 스프링 설정파일에서 사용하고 싶다면 스프링 설정파일에 PropertyPlaceholderConfigurer 클래스를 빈으로 등록 하고 프로퍼티 이름을 설정 파일에서 사용하면 된다.


locations 프로퍼티의 값에는 콤마나 공백으로 구분된 프로퍼티 파일목록이 오며, 프로퍼티 파일에 포함된 프로퍼티의 값은 밑의 dataSource 빈 객체에서의 <property> 태그의 value속성처럼 ${프로퍼티값} 형식으로 사용할 수 있다.





  3   <context:property-placeholder>태그를 사용한 외부 프로퍼티 사용



위의 코드와같이 <context:property-placeholder>태그를 사용하여 location 속성에 외부의 프로퍼티 파일을 지정함으로서 외부의 프로퍼티 파일을 사용 할 수 있다.



  4   PropertyPlaceholderConfigurer 사용시 주의사항



 PropertyPlaceholderConfigurer 파일을 사용할 때 주의할점은 두개이상의  PropertyPlaceholderConfigurer 빈을 설정하면 안된다는 점이다. 이경우, 첫번째  PropertyPlaceholderConfigurer 의 설정이 적용되며 두번째 설정내용은 적용이 되지 않는다. 두개이상의 프로퍼티 파일을 사용하기 위해서는 공백, 콤마를 사용하여 프로퍼티 파일들을 지정하여 사용하면 된다.




댓글