반응형
본 내용은 온라인 강의 사이트 인프런의 김영한 님의 강의 내용이 포함되어 있습니다.
'스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술'
Intro
HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 3가지 방법
GET - 쿼리 파라미터
- ?username=hello&age=20
- 메시지 바디 없이, URL의 쿼리 파라미터에 데이터를 포함하여 전달
- 검색, 필터, 페이징 등에서 많이 사용하는 방식
POST - HTML Form
- Content-Type : application/x-www-form-urlencoded
- 메시지 바디에 쿼리 파라미터 형식으로 전달 : username=hello&age=20
- HTML Form 사용
HTTP message body에 직접 데이터를 담아서 요청
- HTTP API에서 주로 사용, JSON, XMl, TEXT 등
- 데이터 형식은 주로 JSON을 사용
- POST, PUT, PATCH에 이용
요청 파라미터 - 쿼리 파라미터, HTML Form
HttpServletRequest의 getParameter()를 사용하면, 쿼리 파라미터 전송과 HTML Form을 전송할 수 있다.
GET 쿼리 파라미터 전송 방식과 POST HTML Form 전송 방식은 같은 형식을 제공하기 때문에 서로 구분 없이 조회할 수 있다.
ex) username=hello&age=20
이를 간단히 요청 파라미터(Request Parameter) 조회라고 한다.
요청 예제
@Slf4j
@Controller
public class RequestParamController {
@RequestMapping("/request-param-v1")
public void requestParamV1(HttpServletRequest request, HttpServletResponse response) throws IOException {
String username = request.getParameter("username");
int age = Integer.parseInt(request.getParameter("age"));
log.info("username={}, age={}", username, age);
response.getWriter().write("ok");
}
}
// 출력
2022-10-29 21:45:27.490 INFO 22404 --- [nio-8080-exec-4] h.s.b.request.RequestParamController : username=hello, age=20
반응형
'프레임워크(Framework) > Spring' 카테고리의 다른 글
[Spring MVC] 스프링 MVC @ModelAttribute 사용 방법 정리 (0) | 2022.11.18 |
---|---|
[Spring MVC] 스프링 MVC @RequestParam 사용 방법 정리 (0) | 2022.11.17 |
[Spring MVC] HTTP 요청 헤더 정보 조회 (0) | 2022.11.14 |
[Spring] 롬복(Lombok) @Data 어노테이션 (0) | 2022.11.14 |
[Spring MVC] 스프링 MVC 뷰 리졸버(View Resolver) (0) | 2022.11.13 |