SpringMVC入门:ModelAttribute

ModelAttribute是注解,既可以用在方法上,也可以用在参数上。
用在方法上又分该方法是无返回值,还是有返回值。用在方法上表明该方***比@RequstMapping注解的方法先执行。

使用场景:当表单提交的数据不完整,例如缺少date信息,使用该注解可以补充表单数据


有返回值的方法:
@RequestMapping(path = "/param")
    public String testModelAttribute(User user){
    System.out.println(user);
}
表单提交的数据中缺少日期信息
@ModelAttribute
public User showUser(String username,Stringpassword){ //该方法能获取到表单提交的数据信息,写入形参即可,形参名必须与表单一致
    user.setUsername(username);
    user.setPassword(password);
    可以通过用户名在数据库中查找该用户的日期,然后user.setDate();
    return user;这个user一定会被testModelAttribute收到作为其形参值
}
无返回值的方法:
    
@RequestMapping(path)
public String testModelAttribute(@ModelAttribute("one") User user){
    System.out.println(user);
}
上述代码形参中的注解表示:取出map中key为"one"的值赋给user

@ModelAttribute
public void showUser(String username,String Password,Map<String,User> map){
    user.setxxx;
    user.setxxx;
    map.put("one",user);//将user实例存入到map中
}


#Java##学习路径#
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务