본문 바로가기

Room 102. Back-end/Spring

[실전 개발자를 위한 Spring Framework ] 강의 - HTTP 파라미터 처리

09강 HTTP 파라미터 처리

  • 목차
    • 내용
      • HTTP 요청 파라미터 처리
        • @RequestParam
    • 학습 목표
      • HTTP 요청 파라미터를 처리하는 코드를 작성합니다.
      • HTTP 요청 파라미터를 자바 객체로변환하는 기능인 Command 객체를 사용합니다.
  • 파라미터 전송 받기 :: @RequestParam

  • @RequestParam 내 
    • requried 는 null 값에 대한 필수로 입력해야하는 지 결정.
    • defaultValue 는 전달하지 않았을 경우 디폴트 값을 정함.
  • Command 객체를 이용해 폼 전송 처리
    • Command 객체 사용 전 예시.

  • 위와 같이 Request변수가 많을 경우 코드가 복잡해지므로,
    Command 객체를 사용하여 form 전송을 처리할 수 있습니다.
    • 사용 방법은 Controller 내에 VO 객체를 메소드변수로 사용하면, 인스턴스에 자동으로 들어감.
  • Command 객체는 자동으로 View의 Model 로 바로 등록됩니다.
    • view.addObject("member", member); 코드가 필요 없음.
    • 커맨드 객체를 Jsp에서 사용할 때는 객체명 중 첫 글자만 소문자로 바꾸어 사용합니다.
    • 타입 자동 변환 기능
      • 숫자는 int(long), double 타입으로 사용 가능
      • true, false 는 boolean 타입으로 사용 가능.
        • ex) <input type="checkbox" name="isCheck" value="true" />
                private boolean isCheck:
                public void setCheck(boolean isCheck) {
                   this.isCheck = isCheck;
                }
      • Collection 처리 : HTML 에서 같은 이름의 Input 엘리먼트가 구성됩니다.
      • Command 객체를 사용하여 List로 처리
        • 태그 이름이 같은데 value 가 여러개일 경우,
          VO 인스턴스를 List로 처리해주면 자동으로 리스트에 값으로 들어갑니다.
  • 실습 내용!
    • GET/POST 방식 처리
      • @GetMapping("...")
      • @PostMapping("...")
    • Path Variable 처리 (URL 변수 처리 방법)
      • 글 상세보기 구현
        • URL 에 변수를 전달 받는 방법으로, /{articleId} ... @PathVariable String articleId ...
    • command 객체(VO를 사용) 사용
      • x-www-form-urlencoded 방식으로 요청을 보내야 HTML 에서 form 요청하는 방식과 같아
        데이터 전달이 정상적으로 처리됨.
    • ModelAndView로 JSP 페이지에 데이터 전달