spring

    Spring 계층 구조

    스프링은 여러 가지 계층을 갖는 계층 구조로 이루어져 있다. 각 계층들은 웹을 구현하기 위해 자신이 맡은 역할을 수행하며, 아래 그림과 같은 구조로 구성되어 있다. 각 계층들의 역할을 하나씩 살펴보자. Web Layer 흔히 사용하는 컨트롤러(@Controller)나 JSP와 같은 뷰 템플릿 영역이다. 이외에도 필터(@Filter), 인터셉터, 컨트롤러 어드바이스(@ControllerAdvice) 등 외부 요청과 응답에 대한 전반적인 영역을 다룬다. Service Layer @Service 어노테이션을 사용하는 영역이다. Controller와 DAO의 중간 영역에서 사용되며, @Transactional이 사용되어야 하는 영역이다. 트랜잭션, 도메인 간의 순서를 보장해준다. Repository Layer ..