JAVA/SPRING

[JAVA] spring MVC @ModelAttribute 사용법

으악꿈 2021. 3. 26. 13:04
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