Spring Mvc
@Controller
- spring의 controller를 의미한다
- controller를 사용하면 @RequestMapping등의 추가적인 어노테이션을 사용할 수 있게 된다.
@RestController
- @Controller + @ResponseBody
- controller중 view로 응답하지 않는 컨트롤러를 의미한다. ( View가 아닌 객체 자체를 반환)
- HttpResponse로 바로 응답이 가능하다. (@ResponseBody의 역할을 자동적으로 해줌)
@RequestMapping
- http request 라우팅 어노테이션. 요청 형식을 정의하지 않으면 default는 GET이다.
- @RequestMapping은 Class와 Method에 붙일 수 있고, @GetMapping, @PostMapping, @PutMapping, @DeleteMapping 등은 Method에만 붙일 수 있다.
- 다양한 사용방법
@RequestMapping(value = "/ex/foos", method = RequestMethod.GET)
@GetMapping
- @GetMapping, @PostMapping, @PutMapping, @DeleteMapping 등은 Method에만 붙일 수 있다.
@RequestMapping(method = RequestMethod.GET) 의 축약형 주로 데이터를 조회할 때 사용된다.
만약 같은 URL이여도 POST로 요청이 오면 다른 메서드(@PostMapping으로 매핑된 메서드)를 타게 된다.
연관된 글 :
[Spring] @RequestBody / @ResponseBody 어노테이션 이란?
[Spring] 빌더 패턴(Bulider Pattern)
참고 :
'개발 > Spring' 카테고리의 다른 글
[Spring] JPA와 ORM (0) | 2023.03.22 |
---|---|
[Spring] spring 기초 (0) | 2023.03.09 |
[Spring] QueryDSL (0) | 2023.02.20 |
[Spring] Spring Boot (0) | 2023.02.10 |
[Spring] Spring Framework (0) | 2023.02.10 |