본문 바로가기
개발/JAVA, Spring

[Java/Spring] 설정파일 관리

by 똘똘이박사 2018. 10. 29.

이번 포스팅에서는 스프링 프로젝트의 설정파일을 용도에 맞게 몇 가지로 구분하는 작업을 하려고 합니다.


우선 STS Meven 프로젝트로 스프링 MVC 프로젝트를 생성하게 되면

기본적으로 아래 그림과 같은 디렉토리 구조를 가지게 됩니다.

(전 프로젝트 이름을 'sample02' 라고 하였습니다.)





우선 알고 있어야 할 부분이 있는데

대체로 서버 운영에 필요한 스프링 관련 설정(DB, 보안등)은 root-context.xml 에서 처리하고

화면과 관련된 설정은 servlet-context.xml 에서 설정을 하게 됩니다.


서버를 운영할때는 필요한 여러 가지 요소들 중에

대표적인 것들이 데이터베이터 접속, 보안 설정 등입니다.


프로젝트의 규모가 작다면 

이것들을 모두 root-context.xml에 담아 관리할 수 있겠지만 

프로젝트의 규모가 커지면 관리하기가 쉽지 않습니다..

따라서 실제 업무에 있어서는 중요한 부분부분 별로 용도에 맞게 나누어 관리하는 것이 일반적입니다.


가장 먼저 할일은 설정 변경 전인 현재의 상태가 이상이 없는지

서비스를 실행하여 확인을 해 봅니다.


이상이 없다면 이제 설정파일 분리 작업을 시작합니다.


1. web.xml의 수정

순서에 우선 순위는 없으나 전 가장 먼저 web.xml 에 있는 root-context.xml 에 대한 경로부터 수정해 주었습니다.


수정 전

<param-value>/WEB-INF/spring/root-context.xml</param-value>


수정 후

<param-value>classpath:spring/root-context.xml</param-value>




2. 설정 파일 디렉토리('spring') 생성

우선 src/main/resources 패키지 아래에 스프링 설정들을 저장할 폴더를 하나 생성합니다.

src/main/resources 패키지 아래에 폴더를 생성하는 이유는

설정시 'classpath' 경로를 설정하게 되는데 기본 경로가 'src/main/resources' 이기 때문입니다.


전 여기에 아래 그림과 같이 'spring' 라는 폴더를 생성하였습니다.






3. 그리고 root-context.xml 파일을 잘라내어

새로 만든 'spring' 폴더 안에 넣어 줍니다.





4. 서버를 재실행 해서 변경된 설정이 잘 적용되어 있는지 확인해 봅니다.


5. 이상없이 동작하면 이제 다음 작업으로 넘어 갑니다.

root-context.xml 에서 database 관련 설정을 뽑아 따로 관리할 생각입니다.

(최대한 실무에서 하는 방식을 몸에 익혀 둡시다!!)

가장 간편하게는 root-context.xml 을 database-context.xml 이라는 이름으로 복사합니다.

그리고 database-context.xml 에서는 database 설정과 관련된 내용만 남기고 모두 삭제 합니다.

root-context.xml 에서는 반대로 database 관련된 설정을 모두 삭제 합니다.

그리고 나서 저장~!

다시 서버를 재실행 해서 서비스가 정상적으로 동작하는 확인해 봅니다.


이상 없으면 작업 완료!


 





※ 포스팅 내용중에 설명이 잘못 되었거나, 보완이 필요한 부분이 있으면 지적해 주세요~










반응형