Form 데이터
- HttpServletRequest 클래스
- @RequestParam 어노테이션
- 데이터(커맨드) 객체
- @PathVariable
HttpServletRequest 클래스
HttpServletRequest클래스를 이용해서 데이터를 전송하는 방법에 대해서 살펴 봅니다.
이건 아는방법이므로 생략합니다.
res.getParameter(“id”); 와 같은것으로 받아서 model에 실어서 화면으로보내줌
@RequestParam 어노테이션
@RequestParam 어노테이션을 사용했는데 넘어온값이 없다면 400에러를 냅니다. 따라서 반드시 있어야하는 데이터일경우는 @RequestParam을 사용합니다.
데이터(커맨드) 객체
데이터(커맨드) 객체를 이용하여 데이터 많을 경우 간단하게 사용 할 수 있습니다.
기존에 많은 데이터를 옮겨야하는경우 클래스를 생성해서 만들수 있음.
@ModelAttribute를 안써도 되지만 쓰는게 표준이다.
코드양이 어마어마하게 줄어든다.
한가지 주의할점은 넘어오는값과 클래스의 필드명은 같아야한다. 그럼 알아서 할당된다.
@PathVariable
@RequestMapping("/student/{studentId})
public String getStudent(@PathVariable String studentId) {
}
요청경로 뒤에 변수가 @PathVariable어노테이션이 있는 같은이름의 변수인 studentId에 박힌다.
그다지 자주쓰이지 않음