Controller란?
기능
해당 요청 url에 따라 적잘한 view와 mapping 처리
@Autowired @Service를 통해 service와 method를 이용
적절한 ResponseEntity(DTO)를 body에 담아 Client에 반환한다.
@Controller
API와 View를 동시에 사용하는 경우 사용
대신 API서비스를 사용하는 경우에는 @ResponseBody 를 사용하여 객체를 반환
★ VIew(화면) return이 주 목적이다.!
@RestController
view가 필요없는 API만 지원하는 서비스에서 사용 (Spring 4.0.1부터 제공)
@RequestMapping 메소드가 기본적으로 @RequestBody 의미를 가정한다.
data(json, xml) return이 주 목적: return ResponseEntity
즉 @RestController = @Controller + @ResponseBody
Service 란?
기능
@Autowired Repository 를 통해 Repository의 Method를 이용
적절한 비즈니스 로직을 처리한다.
DAO로 DB에 접근하고 DTO로 데이터를 넘겨받은뒤 비즈니스 로직을 처리해 적절한 데이터를 반환
Repository란?(DAO)
기능
실제로 DB에 접근하는 객체
Service와 DB를 연결하는 고리
SQL을 사용해서 DB에 접근한뒤 CRUD API를 제공
-JPA 대부분 기본적인 CRUD 메소드를 제공
예시 (JPA의 경우)
[ Spring ] 12. DAO & DTO & Entity와 스프링 패키지의 전체 구조
DAO & DTO & Entity DAO Data Access Object repository package 실제로 DB에 접근하는 객체 Persistance Layer(DB에 dat를 CRUD하는 계층)이다. Service와 DB를 연결하는 고리의 역할 SQL을 사용해 (개발자가 직접 코딩) DB에 접
coder-in-war.tistory.com
'JAVA' 카테고리의 다른 글
@requestbody / @requestparam (0) | 2022.11.24 |
---|---|
@RequestBody VS @ResponseBody 이해해보기! (0) | 2022.11.24 |
Spring Data Jpa(쿼리 메소드) @Query 어노테이션 사용법 (0) | 2022.11.23 |
JPA 사용법 (JPA Repository) (2) | 2022.11.22 |
Entity , Dto 차이점 개념 (0) | 2022.11.21 |