SpringMvc-@ModelAttribute

一.写到不带参数的方法上

        @ModelAttribute()
public void aa(Model m) {
m.addAttribute("key1", "value1");

}

二.写到带参数的方法上

        @ModelAttribute()
public String aa(Model m) {
return "value2";

}

        上面的代码相当于按照一的写法这样写

        @ModelAttribute()
public void aa(Model m) {
m.addAttribute("string", "value2");//返回值类型首字母小写,当成key使用

}

        上面的代码我们自定义一个key,相当于这样写

        @ModelAttribute(name="key2")
public void aa(Model m) {
return "value2";

}

三.写到参数上

        public void aa(@ModelAttribute("key2") String value2) {//就是从上一个Model中取出key2的值,给value2
System.out.pring(value2);

}

        上面的代码相当于

public void aa(Model m) {

                String value2=m.asMap().get("key2");

System.out.pring(value2);

}

四.写到方法上,并且方法上还有@RequestMapping注解,根据Spring官方文档,特意提及此种写法完全没有任何意义,故不记录在此,以免对读者和我自己造成盲目的学习和混淆






猜你喜欢

转载自blog.csdn.net/u011624903/article/details/80252744