您的位置:首页 > 编程语言 > Java开发

springMVC3.0后台验证信息不显示的原因初探

2014-01-27 13:59 218 查看
springMVC3.0提供了很方便的后套验证机制,但初学的时候发现验证信息经常显示不出来。

一般来说,new一个空对象,放到model里,显示到页面,提交到控制器,只要控制器参数里有@Valid 类名 对象名及BindingResult,验证消息都能出来。

但是经常出现的情况是对象要初始化,或者对象在修改状态下,这时就有可能不显示验证消息,而控制器走向还是正确的。

经过摸索,发现要注意几点:

1、传输的对象参数要有@Valid注解

2、传输的对象参数要有@ModelAttribute("对象名")注解,注意:("对象名")是必须的,不写的话验证信息不会像是

3、BindingResult参数紧跟在对象参数后面

4、参数里带上Model,传递对象参数到页面

具体写法大致如下:

@RequestMapping(value="aaa",method=RequestMethod.POST)

public String update(@Valid @ModelAttribute("content")Content content,

 @BindingResult result,Model model){

 if(result.hasErrors()){

  model.addAttribute("content", content);

  return "edit";

 }

 service.update.......

}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  springmvc
相关文章推荐