Spring
스프링 MVC 1 - HTTP 요청 파라미터 - @ModelAttribute
스프링 MVC 1 - HTTP 요청 파라미터 - @ModelAttribute
2022.07.16HTTP 요청 파라미터 - @ModelAttribute 실제 개발을 하면 요청 파라미터를 받아서 필요한 객체를 만들고 그 객체에 값을 넣어주어야 한다. 보통 다음과 같이 코드를 작성할 것이다. 스프링은 이 과정을 완전히 자동화해주는 @ModelAttribute 기능을 제공한다. 먼저 요청 파라미터를 바인딩 받을 객체를 만들자. HelloData 롬복 @Data @Getter, @Setter, @ToString, @EqualsAndHashCode, @RequiredArgsConstructor를 자동으로 적용해준다. @ModelAttribute 적용 - modelAttributeV1 마치 마법처럼 HelloData 객체가 생성되고, 요청 파라미터의 값도 모두 들어가 있다. 스프링 MVC는 @ModelAttr..
스프링 MVC 1 - HTTP 요청 파라미터 - @RequestParam
스프링 MVC 1 - HTTP 요청 파라미터 - @RequestParam
2022.07.16HTTP 요청 파라미터 - @RequestParam 스프링이 제공하는 @RequestParam을 사용하면 요청 파라미터를 매우 편리하게 사용할 수 있다. requestParamV2 @RequestParam: 파라미터 이름으로 바인딩 @ResponseBody: View 조회를 무시하고, HTTP message body에 직접 해당 내용 입력 @RequestParam의 name(value) 속성이 파라미터 이름으로 사용 @RequestParam("username") String memberName → request.getParameter("username") requestParamV3 HTTP 파라미터 이름이 변수 이름과 같으면 @RequestParam(name="xx") 생략 가능 requestParamV..
스프링 MVC 1 - HTTP 요청 파라미터 - 쿼리 파라미터, HTML Form
스프링 MVC 1 - HTTP 요청 파라미터 - 쿼리 파라미터, HTML Form
2022.07.16HTTP 요청 파라미터 - 쿼리 파라미터, HTML HTTP 요청 데이터 조회 - 개요 서블릿에서 학습했던 HTTP 요청 데이터를 조회하는 방법을 다시 떠올려 보자. 그리고 서블릿으로 학습했던 내용을 스프링이 얼마나 깔끔하고 효율적으로 바꾸어주는지 알아보자. HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 방법을 알아보자. 클라이언트에서 서버로 요청 데이터를 전달할 때는 주로 다음 3가지 방법을 사용한다. GET - 쿼리 파라미터 /url?username=hello&age=20 메시지 바디 없이, URL의 쿼리 파라미터에 데이터를 포함해서 전달 예) 검색, 필터, 페이징등에서 많이 사용하는 방식 POST - HTML Form content-type: apllication/x-www-f..
스프링 MVC 1 - HTTP 요청 - 기본, 헤더 조회
스프링 MVC 1 - HTTP 요청 - 기본, 헤더 조회
2022.07.15HTTP 요청 - 기본, 헤더 조회 애노테이션 기반의 스프링 컨트롤러는 다양한 파라미터를 지원한다. 이번 시간에는 HTTP 헤더 정보를 조회하는 방법을 알아보자. RequestHeaderController [http://localhost:8080/headers에 대한 로그] HttpServletRequest HttpServletResponse HttpMethod: HTTP 메서드를 조회한다. org.springframework.http.HttpMethod Locale: Locale 정보를 조회한다. @RequestHeader MutiValueMap headerMap 모든 HTTP 헤더를 MultiValueMap 형식으로 조회한다. @RequestHeader("host") String host 특정 HTT..
스프링 MVC 1 - 요청 매핑 - API 예시
스프링 MVC 1 - 요청 매핑 - API 예시
2022.07.15요청 매핑 - API 예시 회원 관리를 HTTP API로 만든다 생각하고 매핑을 어떻게 하는지 알아보자. (실제 데이터가 넘어가는 부분은 생략하고 URL 매핑만) 회원 관리 API 회원 목록 조회: GET /users 회원 등록: POST /users 회원 조회: GET /users/{userId} 회원 수정: PATCH /users/{userId} 회원 삭제: DELETE /users/{userId} MappingClassController /mapping: 는 강의의 다른 예제들과 구분하기 위해 사용했다. @RequestMapping("/mapping/users") 클래스 레벨에 매핑 정보를 두면 메서드 레벨에서 해당 정보를 조합해서 사용한다. Postman으로 테스트 회원 목록 조회: GET /ma..
스프링 MVC 1 - 요청 매핑
스프링 MVC 1 - 요청 매핑
2022.07.14요청 매핑 MappingController 매핑 정보(한번 더) @RestController @Controller는 반환 값이 String이면 뷰 이름으로 인식된다. 그래서 뷰를 찾고 뷰가 랜더링 된다. @RestController는 반환 값으로 뷰를 찾는 것이 아니라, HTTP 메시지 바디에 바로 입력한다. 따라서 실행 결과로 ok 메시지를 받을 수 있다. @ResponseBody와 관련이 있는데, 뒤에서 더 자세히 설명한다. @RequestMapping("/hello-basic") /hello-basic URL 호출이 오면 이 메서드가 실행되도록 매핑한다. 대부분의 속성을 배열[]로 제공하므로 다중 설정이 가능하다. {"/hello-basic", "/hello-go"} Postman으로 테스트 해보자..