본문 바로가기

BackEnd/Spring

스프링 mvc 프로젝트의 기본구성

반응형

스프링 MVC를 이용하는 프로젝트의 구성을 이해하는 것은 전체 데이터의 흐름을 보기 위해서


브라우저에서 전송한 데이터를 스프링 MVC의 어떤 단계를 거쳐서 실행되는지를 이해한다면 문제가 발


생했을 때 빠른 대처와 대안을 찾을수 있다.


일반적으로 웹 프로젝트는 3-tier(티어) 방식으로 구성한다.





1) Presentation Tier(화면 계층)


Presentation Tier(화면 계층)는 화면에 보여주는 기술을 사용하는 영역.


Servlet/JSP나 스프링 MVC가 담당하는 영역. Presentation Tier는 프로젝트의 성격에 맞춰 앱으로 


제작하거나,CS(Client-Server)로 구성되는 경우도있다. 스프링 MVC와 JSP를 이용한 화면 구성이 


이에 속함.


2) Business Tier(비즈니스 계층)


Business Tier는 순수한 비즈니스 로직을 담고 있는 영역. 이 영역이 중요한 이유는 고객이 원하는 


요구 사항을 반영하는 계층이기 때문. 이 영역의 설계는 고객의 요구 사항과 정확히 일치해


야함. 이 영역은 주로 xxxService’와 같은 이름으로 구성하고,메서드의 이름 역시 고객들이 사용하


는 용어를 그대로 사용하는것이 좋다.


3) Persistence Tier(영속 계층 혹은 데이터 계층)


Persistence Tier는 데이터를 어떤 방식으로 보관하고,사용하는가에 대한 설계가 들어가는 계층


일반적인 경우에는 데이터베이스를 많이 이용하지만,경우에 따라서 네트워크 호출이나 원격 호


출 등의 기술이 접목될 수 있다. 이 영역은 MyBatis와 mybatis-spring을 이용


계층에 대한 설명을 스프링 MVC와 맞춰서 설명해 보면 다음과 같은 구조



스프링 MVC 영역은 Presentation Tier를 구성하게 되는데,각 영역은 사실 별도의 설


정을 가지는 단위로 볼 수 있다. Presentation Tier는 servlet-context.xml의 설정 파일이 해당 영역


의 설정을 담당. 스프링 Core 영역은 root-context.xml, service,흔히 POJO(Plain—Old-


Java—Object)의 영역. 이들은 스프링의 의존성 주입을 이용해서 객체 간의 연관구조를 완성해서 사용.


MyBatis 영역은 현실적으로는 mybatis-spring을 이용해서 구성하는 영역. SQL에 대한 처리를 담당하는 구조



다음 이어지는 포스팅

https://cg-developer.tistory.com/417





반응형

'BackEnd > Spring' 카테고리의 다른 글

유닛 테스트  (0) 2020.05.08
한 서버에 프로젝트 2개배포  (0) 2020.02.11
http 에러코드  (0) 2020.02.10
Controller 작성시 예외 상황  (0) 2020.02.09
컨트롤러의 리턴타입  (0) 2020.02.09