백엔드/아키텍쳐 패턴

Spring Framework - 3계층 : Controller, Service, Repository

JerryTheSWEngineer 2022. 2. 17. 16:13
반응형

** Controller

일종의 접수처. 화면단에서 뭔가 요구 사항을 보내면 그 요구사항을 먼저 받는 곳.

클라이언트단에서의 요구 사항을 서버에서 받아주게 하는 것이 컨트롤러이다.

그리고 요청받은 종류를 구분한다. Rest의 경우 Put, Post, Get, Delete 등이 있다.

Presentation Tier (화면 계층)이라고도 한다.

 

**Service

사용자의 요구 사항을 실제로 이행하는 곳이다.

비즈니스로직이 처리되는 곳이라고 생각하자.

Business Tier(비즈니스 계층)이라고도 한다.

 

 

**Repository

DB와 실제 붙어있는 곳이다. 서비스단에서 나온 결과값을 저장, 기존의 데이터 저장값을 반환해주는 등의 일을 한다.

Persistence Tier (영속 계층 , 데이터 계층)

~DAO (Data Access Object)라고 이름 짓기도한다.

 

*DTO, VO

일반적으로 둘 다 데이터를 담고있는 객체를 의미.

엔티티로 선언한 것을 그대로 데이터베이스에 전달하고 전달받는다면, 그 내용이 변경될 시 DB 내용이 변경된다는 것을 의미.

따라서 전달 전용으로 쓰이는 객체를 만들어서 사용.

반응형