ABAP DUMP ERROR 24시

GET URL 쿼리 파라미터, POST HTML Form 형식 비교 본문

[WEB]Back-end/Spring MVC

GET URL 쿼리 파라미터, POST HTML Form 형식 비교

이운형 2022. 2. 7. 20:19
반응형

# 인프런 김영한의 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 개인적으로 정리한 글입니다.

 

정리


Q. 가장 큰 차이점이 뭐야?

GET URL 쿼리 파라미터 방식

HTTP MESSAGE BODY를 사용하지 않기 때문에 CONTENT TYPE이 없다.

 

POST HTML Form 방식

HTTP MESSAGE BODY를 사용하기 때문에 CONTENT TYPE을 꼭 정해줘야 한다.==application.x-www-from-urlencoded 방식

 

Q. 공통점은 뭐야?

HttpServlet의 기능을 같은 JAVA CODE로 사용할수 있다.

 

 

1. 전체 파라미터 조회 => getParameterNames().asIterator().forEachRemaining(paramName -> request.getParameter(paramName))) 으로 사용한다.

@WebServlet(name = "requestParamServlet", urlPatterns = "/request-param")
public class RequestParamServlet extends HttpServlet {

    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("[전체 파라미터 조회] - start");

        request.getParameterNames().asIterator()
                .forEachRemaining(paramName -> System.out.println( paramName + "=" + request.getParameter(paramName)) );

        System.out.println("[전체 파라미터 조회] - end");

        System.out.println("[단일 파라미터 조회] - start");

2. 단일 파라미터 조회 => request.getParameter("")

System.out.println("[단일 파라미터 조회] - start");

String username = request.getParameter("username");
String age = request.getParameter("age");
System.out.println("username = " + username);
System.out.println("age = " + age);
System.out.println();
System.out.println("[단일 파라미터 조회] - end");

 

3. 이름이 같은 복수 파라미터 조회 => request.getParameterValues("")

System.out.println("[이름이 같은 복수 파라미터 조회]");
String[] usernames = request.getParameterValues("username");
for (String name : usernames) {
    System.out.println("name = " + name);
}
반응형
Comments