728x90
jsp에서 서버단(Controller)와 param값을 주고 받을 때 @ModelAttribute 어노테이션을 사용하지 않는 경우 보편적으로 아래와 같이 사용한다.
weburl + /test.do?id=id&name=name&email=email&mobile=mobile
@RequestMapping(value = "test.do", method = RequestMethod.GET)
public String test(@RequestParam("id") String id, @RequestParam("name") String name,
@RequestParam("email") String email, @RequestParam("mobile") String mobile, ModelMap model){
model.addAttribute("id","id");
model.addAttribute("name","name");
model.addAttribute("email","email");
model.addAttribute("mobile","mobile");
return "test";
}
<form name="test" action="test.do">
<input type="text" name="id" value="${id}"/>
<input type="text" name="name" value="${name}"/>
<input type="text" name="email" value="${email}"/>
<input type="text" name="mobile" value="${mobile}"/>
</form>
하지만 @ModelAttribute 어노테이션을 사용하는 경우 보다 소스가 간단해지고 간편하게 사용가능하다.
1. 해당 정보들을 담을 수 있는 객체를 생성한다. (Test 객체 생성)
public class Test {
private String id;
private String name;
private String email;
private String mobile;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
}
2. Controller에 @ModelAttribute 선언
@RequestMapping(value = "test.do", method = RequestMethod.GET)
public String test(@ModelAttribute("test") Test test, ModelMap model){
return "test";
}
3. test.jsp
<form:form name="test" modelAttribute="test" name="test" action="test.do">
<form:input path="id"/>
<form:input path="name"/>
<form:input path="email"/>
<form:input path="mobile"/>
</form:form>
728x90
'JAVA > SPRING' 카테고리의 다른 글
spring form태그 readonly (0) | 2021.03.15 |
---|---|
스프링(SPRING) 이란? (0) | 2021.02.18 |
SPRING SECURITY - 기본 설정 (0) | 2021.02.18 |