http://blog.sina.com.cn/s/blog_6829be5c0101alxh.html 非常详细的一篇讲解 并且值得深入探讨

http://bbs.csdn.NET/topics/360254599  简单明了

1. 首先导入依赖包bean-validator.jar

2.在实体类上面写一些相关的验证信息:可以搜索更多的一些验证方式,这只是一部分

可以参考:点击打开链接http://blog.csdn.Net/caihaijiang/article/details/7463514

  1. private String username;
  2. private String password;
  3. private String nickname;
  4. private String email;
  5. public User() {
  6. }
  7. @NotEmpty(message="用户名不能为空")
  8. public String getUsername() {
  9. return username;
  10. }
  11. public void setUsername(String username) {
  12. this.username = username;
  13. }
  14. @Size(min=1,max=10,message="密码的长度应该在1和10之间")
  15. public String getPassword() {
  16. return password;
  17. }
  18. public void setPassword(String password) {
  19. this.password = password;
  20. }
  21. public String getNickname() {
  22. return nickname;
  23. }
  24. public void setNickname(String nickname) {
  25. this.nickname = nickname;
  26. }
  27. @Email(message="邮箱的格式不正确")
  28. public String getEmail() {
  29. return email;
  30. }
  31. public void setEmail(String email) {
  32. this.email = email;
  33. }

3.后台controller处理

  1. @RequestMapping("save")
  2. public String save( @Valid User user,BindingResult result) {
  3. //
  4. if(result.hasErrors()){
  5. List<ObjectError> ls=result.getAllErrors();
  6. for (int i = 0; i < ls.size(); i++) {
  7. System.out.println("error:"+ls.get(i));
  8. }
  9. }
  10. return "adduser";
  11. }

对BindingResult的深入解析:如果在使用接口返回信息的时候,可以直接拿到bindingResult中的错误信息

  1. if(br.hasErrors()) {
  2. //如果有错误直接跳转到add视图
  3. FieldError fieldError= br.getFieldError();
  4. System.out.println(fieldError.getDefaultMessage());
  5. List<FieldError> list = br.getFieldErrors();
  6. for (FieldError fieldError2 : list) {
  7. System.out.println(fieldError2.getDefaultMessage());
  8. }
  9. List<ObjectError> ls=br.getAllErrors();
  10. for (int i = 0; i < ls.size(); i++) {
  11. System.out.println("error:"+ls.get(i).getDefaultMessage());
  12. }
  13. return "user/add";
  14. }

springMvc 的参数验证 BindingResult result 的使用的更多相关文章

  1. @Valid参数验证 BindingResult result 的使用

    1.首先导入依赖包bean-validator.jar2.在实体类上面写一些相关的验证信息:可以搜索更多的一些验证方式,这只是一部分 可以参考:点击打开链接http://blog.csdn.net/c ...

  2. SpringBoot08 请求方式、参数获取注解、参数验证、前后台属性名不一致问题、自定义参数验证注解、BeanUtils的使用

    1 请求方式 在定义一个Rest接口时通常会利用GET.POST.PUT.DELETE来实现数据的增删改查:这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 1 ...

  3. SpringMVC中使用@Valid和BindingResult进行参数验证

    我们知道,后端Controller层一般是第一层被调用,它用来接收参数以及转发,那么参数的校验也就在这一层,例如非空和格式校验等等. 手动验证 public String validPhone(Str ...

  4. SpringMVC 表单验证

    SpringMVC 表单验证 本章节内容很丰富,主要有基本的表单操作,数据的格式化,数据的校验,以及提示信息的国际化等实用技能. 首先看效果图 项目结构图 接下来用代码重点学习SpringMVC的表单 ...

  5. SpringMVC类型转换,验证

    点击上一章-SpringMVC视图及REST风格 Spring mvc 数据绑定流程: SpringMvc将ServletRequest对象及目标方法的形参实例传给WebDataBinderFacto ...

  6. spring boot参数验证

    必须要知道 简述 JSR303/JSR-349,hibernate validation,spring validation 之间的关系 JSR303 是一项标准,JSR-349 是其的升级版本,添加 ...

  7. 实用———springmvc接收参数校验

    https://www.cnblogs.com/funyoung/p/8670550.html https://www.cnblogs.com/monkeydai/p/10068547.html He ...

  8. Spring Boot 使用 JSR303 实现参数验证

    简介 JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation. 在任何时候,当你要处理一个应用程序的业务逻辑,数据校验是你必须要考虑和面对的事情.应用程序必须通过 ...

  9. SpringBoot整合Hibernate Validator实现参数验证功能

    在前后端分离的开发模式中,后端对前端传入的参数的校验成了必不可少的一个环节.但是在多参数的情况下,在controller层加上参数验证,会显得特别臃肿,并且会有许多的重复代码.这里可以引用Hibern ...

随机推荐

  1. centos7安装lamp

    一.准备工作 1.   下载并安装CentOS7.2,配置好网络环境,确保centos能上网,可以获取到yum源. centos7.2的网络配置: vim /etc/sysconfig/network ...

  2. mknod命令

    mknod - make block or character special filesmknod [OPTION]... NAME TYPE [MAJOR MINOR]    option 有用的 ...

  3. [笔记]Linux NTP命令 (ESX适用)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://delxu.blog.51cto.com/975660/307513 [推荐阅读] ...

  4. js封装插件【组件】三种方式,含es6新特性。

    1.先来说一下我使用到的es6的Object.assign.在jq里合并对象用的是extend方法,用来处理默认参数和传入参数做合并.es6里为我们提供了Object.assign,但是ie下全部撂倒 ...

  5. VIM配置示例

    以下是我习惯的vim配置,做个记录~_~ " 文件编码 set fileencoding=utf- set encoding=utf- set termencoding=utf- " ...

  6. T1,T2,T3 三个线程顺序执行

    T1,T2,T3 三个线程顺序执行 现在有 T1.T2.T3 三个线程,你怎样保证 T2 在 T1 执行完后执行,T3 在 T2 执行完后执行?(T1->T2->T3) 这个线程问题通常会 ...

  7. 服务管理(svcadm)

    svcs   正在运行的服务 svcs -a  正在运行和没运行的服务 svcs -D  此进程依赖的进程    svcs -D sendmail svcs -d  依赖于此进程的进程  svcs - ...

  8. css3实现立方体,并且自转效果

    先是HTML 一个父div包含四个绝对定位的div <div class='container container--realistic'> <div class='cube cub ...

  9. 未能从程序集“Elmah”中加载类型“Elmah.ErrorLogModule”错误

    项目名与Elmah重名了,以为是配置文件的问题,搞了好久.

  10. Shiro切入Spring的方式

    在springMVC中要使用shiro,一般都遵循下面的配置: applicationContext-shiro.xml <bean id="shiroFilter" cla ...