版权声明:转载请注明出处~ 摸摸博主狗头 https://blog.csdn.net/cris_zz/article/details/79921935
在方法定义上使用 @ModelAttribute 注解:Spring MVC
在调用目标处理方法前,会先逐个调用在方法级上标注了
@ModelAttribute 的方法示例代码
/*
* 有 @ModelAttributes 标记的方法,会在每个目标方法执行之前被springMVC 调用
*/
@ModelAttribute
public void getUser(@RequestParam(value="id",required=false) Integer id,
Map<String, Object> map) {
System.out.println("modelAttribute method");
//说明前台发来的请求是修改用户信息的请求
if(id != null) {
//模拟从数据库取出对应的数据
User user = new User(1, "古天绿", "000", "9");
System.out.println("从数据库取出来还没有修改的数据:"+user);
map.put("user", user);
}
}
@RequestMapping("testModelAttribute")
public String testModelAttribute(User user) {
System.out.println("修改后的user:"+user);
return SUCCESS;
}
- helloworld.jsp
<!--
模拟修改操作
1. 原始数据为:1,渣渣辉,123,12
2. 密码不能被修改
-->
<form action="springMVC/testModelAttribute" method="post">
<input type="hidden" name="id" value="1">
姓名:<input type="text" name="name" value="渣渣辉">
<br>
密码:<input type="password" name="password" value="123">
<br>
年龄:<input type="text" name="age" value="12">
<br>
<input type="submit" value="提交">
</form>
- 测试图: