커맨드 객체란?
클라이언트가 전달해주는 파라미터 데이터를 주입 받기 위해 사용되는 객체
<form action="test" method="post">
data1: <input type="text" name="data1"/>
data2: <input type="text" name="data2"/>
<button type="submit">확인</button>
</form>
위의 form으로 데이터를 전송(post)하면 @PostMapping으로 mapping되어 실행된다. 이때 Entity, DTO,VO 등의 객체로 주입을 받도록 되어있다.
@PostMapping("/test")
public String test(@ModelAttribute Member member) {
member.getData1()l;
member.getData2();
}
이 때 Member라는 클래스를 만들어야 하는데, 바로 이 클래스를 "커맨드 객체" 라고 한다.
public class Member{
private String data1;
private String data2;
public String getData1(){
return data1;
}
public void setData1(String data1){
this.data1;
}
public String getData2(){
return data2;
}
public void setData2(String data2){
this.data2 = data2;
}
}
이 Member 클래스는 data1과 data2를 주입받을 수 있다.
form으로 전송된 데이터들이 이 "커맨드 객체"에 담겨 controller로 전송된다.
@ModelAttribute 어노테이션을 사용하여 주입받은 객체는 request에 담겨서 return 으로 전달하겠다를 의미한다.
그래서 따로 request를 해주지 않아도 전달이 된다.
참고:https://cokes.tistory.com
'오늘의 기록' 카테고리의 다른 글
mariaDB 이용하여 oracle connet by 사용하기 (계층쿼리) (0) | 2022.05.16 |
---|---|
Eclipse 사용 시 local 서버 사용하기 (0) | 2022.05.16 |
mariaDB dump하는 방법 (0) | 2022.02.16 |