Spring - 빈 설정 파일 관리

2010. 8. 22. 16:12plming/Java - Spring

1. 수평적 분리 방법
   각 컴포넌트마다 하나의 설정 파일을 가지며, 해당 컴포넌트에 관련한 모든 정보(UI, 비즈니스, 퍼시스턴스)를 가지는 구조

   applicationContext-user.xml : User컴포넌트의 UI게층, 비즈니스 계층, 퍼시스턴스 계층의 모든 정보
   applicationContext-board.xml : Board컴포넌트의 UI게층, 비즈니스 계층, 퍼시스턴스 계층의 모든 정보

   각 컴포넌트마다 설정 파일을 관리할 수 있고 명확한 분리가 가능하므로 효율적으로 관리가 가능.
   그러나, 각 계층에서 공통적인 정보를 각 컴포넌트마다 중복해서 설정해야 한다는 단점이 있다.


2. 수직적 분리 방법
   각 계층마다 하나씩의 빈 설정 파일을 가지는 방법

   applicationContext-ui.xml : 각 컴포넌트들의 UI 계층 정보
   applicationContext-biz.xml : 각 컴포넌트들의 비즈니스 계층 정보
   applicationContext-dao.xml : 각 컴포넌트들의 퍼시스턴스 계층 정보


3. 프로젝트 규모에 따른 빈 설정 파일 관리 전략
   수평적/수직적 분리 모두 장단점을 가지므로, 프로젝트 규모나 상황에 따라 두 가지 방법을 적절히 통합해서 사용하는 것이 좋은 선택

   중,소규모라면 수직적 분리를 기본 원칙으로 공통적인 설정 파일들을 분리하는 것이 적절하다.

   applicationContext-jdbc.xml : Common 퍼시스턴스 계층
   applicationContext-ui.xml : Common UI 계층

   컴포넌트의 개수가 증가할수록 각 계층의 빈 설정 파일이 비대해지는 문제점.


   대형 프로젝트에는 수평적 분리방법을 기본 원칙으로 공통적인 설정 파일들을 분리하는 것이 좋다.

   applicationContext-jdbc.xml : Common 퍼시스턴스 계층
   applicationContext-ui.xml : Common UI 계층
  
   너무 많은 빈 설정파일이 생겨 유지보수가 힘드므로, 설정 파일에 5~10개의 컴포넌트를 관리하는 것이 좋다.


[출처] Spring 프레임워크 워크북

'plming > Java - Spring' 카테고리의 다른 글

Spring Transaction - 프로그램에서 처리  (1) 2010.08.22
Spring Transaction  (0) 2010.08.22
Spring AOP - Logging, Exception 구현  (0) 2010.08.19
Spring AOP (Aspect Oriented Programming)  (0) 2010.08.19
Spring - 테스트 전략  (0) 2010.08.17