SpringBoot에서 Rest API
HTTP메시지 -- Controller -- 비지니스 로직 -- Repository -- DB
HTTP메시지
http메소드, 요청url , 상태코드
헤더 값들
메시지body
Controller
@Controller > @RequestMapping > 메소드 매개변수 > 로직 > return값
예외처리 커스텀 필요
http메시지와 직접적인 연관( 상태코드, 해더값들 핸들링 등등 )
@RequestMapping
요청url, http메소드
RequestMappingHandlerAdapter가 HandlerMethodArgumentResolver를 호출
ArgumentResolver가 컨트롤러가 필요로 하는 다양한 파라미터의 값을 생성한다.
메소드 매개변수
http요청에서 전달한 데이터 파징( @RequestParam, @ModelAttribute, @RequestBody 등등 )
사용할 기능들 파징( ex HttpServletRequest , Model, BindingResult 등등 )
요청 데이터 파징에서 validation필요한 경우 있음
HandlerMethodArgumentResolver를 확장해서 컨트롤러로 넘어가는 파라미터를 직접 만들수도 있다.
return값
@Controller + String > view이름
ResponseBody에 직접 넣을수도
ResponseEntity > 응답의 Header 값이나 Status Code를 개발자가 세밀하게 제어
Repository
DB와의 connection
CRUD수행
트랜잭션등 DB에서의 작업들
DB
'Spring' 카테고리의 다른 글
| 읽어볼 주제들 02 (1) | 2025.02.22 |
|---|---|
| @NoArgsConstructor(access = AccessLevel.PROTECTED) (1) | 2024.08.05 |
| ResponseEntity (0) | 2024.04.23 |
| sts에서 springBoot 프로젝트 war파일로 패키징, Gradle Tasks (1) | 2024.04.10 |
| RestTemplate( org.springframework.web.client.RestTemplate.class ) (1) | 2023.11.15 |