[Spring MVC] @~Mapping 사용시 참고
- [ Backend ]/Spring Web
- 2022. 2. 4.
원래는 @RequestMapping 어노테이션을 통해서 URL을 컨트롤러의 메서드와 매핑할때 요청 주소와 방식을 설정하였다.
@RequestMapping(value="/check", method={RequestMethod.POST})
이후 스프링이 업데이트되면서 일일히 RequestMapping의 method를 설정해주지 않고 직관적으로 설정하기 위하여 Mapping관련 어노테이션인 @GetMapping, @PostMapping등이 추가되었다.
일반적으로 GET과 POST매핑을 사용할때, 뷰의 form태그의 method에 따라서 요청 방식이, action에 따라서 uri가 결정된다.
<form th:action="@{/items/new}" th:object="${form}" method="post">
이때, form의 요청을 발생시켜주는 페이지의 uri와 form으로 요청이 들어오는 uri가 같다면 action uri는 생략 가능하다.
<form th:object="${form}" method="post">
컨트롤러에서 form의 action정보가 없다면 form의 GET이나 POST요청이 이루어진 주소 그대로 처리된다고 생각하면 될듯.
추가)
기본적으로 컨트롤러에서,
@GetMapping : 뷰페이지 파일을 읽어 화면에 출력
@PostMapping : 뷰페이지 파일로부터 필요한 데이터를 송/수신
으로 생각하면 되겠다,
GetMapping은 웹브라우저에서 GET방식(주소창으로 전달)으로 들어오면 연결되고, PostMapping은 POST방식(흔히 form태그에서 지정)으로 들어오면 연결해준다.
form태그는 submit버튼을 통해서 form의 내용을 action의 uri로 전달하고 다이렉션한다.
'[ Backend ] > Spring Web' 카테고리의 다른 글
[Spring MVC] 메세지, 국제화 (0) | 2022.07.08 |
---|---|
[Spring MVC] URL 매핑, 데이터 전송/조회 (0) | 2022.02.19 |
[Spring MVC] 서블릿과 스프링, 프론트 컨트롤러 (0) | 2022.02.09 |
[Spring MVC] 웹 서버, WAS, 서블릿 (0) | 2022.02.08 |
[Spring MVC] 역할의 분리와 디자인 패턴 - Spring MVC 동작 (0) | 2022.02.01 |