스프링 프레임워크 7장: 요청 파라미터 취득하기

SR Lee·2023년 7월 1일
0

1. 요청 파라미터 (request parameter)

  1. 정의: 서버에 전송되는 값
  2. 종류:
    1. request query string으로 보내지는 값 (GET)
    2. request body에 저장되어 보내지는 값 (POST)
    3. 뷰에서 클릭한 버튼의 name 속성값
    4. URL경로의 일부로 보내지는 값
  3. 취득방법:
    1. @RequestParam
    2. Form 클래스

2. 입력값을 받는 프로그램 만들기 (@RequestParam)

  1. 프로젝트 생성 (Dependencies: Spring Boot Dev Tools, Lombok, Thymeleaf, Spring Web)
  2. 컨트롤러 & 뷰 생성
    1. 컨트롤러에 @GetMapping(”show”) & return “entry” (entry 는 뷰 이름)
    2. 뷰 entry.html 생성,
      1. th:action=”@{/confirm}” (=/confirm URL로 보냄)
      2. type=”number” name=”age” min=”1” max=”100” (=type을 number로 지정, number만 입력가능, 등)
    3. 컨트롤러에 추가
      1. @PostMapping(”confirm”)
      2. @RequestParam
      3. .addAttribute()
    4. 뷰 생성 (확인화면); confirm.html 생성, [[{$}]]

3. 입력값을 받는 프로그램 만들기 (Form 클래스)

  1. 사용: 입력 데이터 및 표시 데이터를 하나의 클래스로 취급하는 경우 (POJO)
  2. Form 클래스 생성 (새 패키지 만들고 그 안에 넣음)
    1. @Data로 Lombok 기능 사용
    2. @DateTimeFormat으로 ‘iso = DateTimeFormat.ISO.DATE 지정해 날짜 형식을 yyyy-MM-dd로 지정
  3. 컨트롤러 수정 및 추가
    1. @RequestParam 주석처리 (이제 Form 쓸것임)
    2. public String confirmView (Form f) { return “confirm2”;}
  4. 뷰 생성 (확인 화면: Form 클래스 사용)
    1. confirm2에 대응하는 confirm.html 생성
    2. form 이용해 객체명.필드명 형식으로 저장된 데이터를 참조

4. URL에 포함된 값을 받는 프로그램 만들기

  1. 프로젝트 생성
  2. 컨트롤러[@GetMapping(”show”)] 와 뷰[show.html, th:href=”{/function/1}”] 생성
  3. 컨트롤러에 추가 (링크 처리) switch 문으로 뷰 이름 확정
  4. 뷰 생성 (기능 화면) 각자 대응하게 만듦 src/main/resources → templates 새로 만들기 → 경로 → ‘pathvariable’; (function1.html, function2.html etc.)
  5. 브라우저 열어 확인
  6. 컨트롤러에 추가 (버튼 판별 처리) @PostMapping(value=”send”, params=”a”), return submit/a;
  7. 뷰 생성 (버튼 클릭 확인 화면) src/main/resources → templates 새로 만들기 → 경로 → ‘submit’
  8. 확인 (링크)
profile
studying backend

0개의 댓글