SpringMVC数据校验二,JSR规范如何实现?

2026-04-10 14:031阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计583个文字,预计阅读时间需要3分钟。

SpringMVC数据校验二,JSR规范如何实现?

JSR.text 数据校验主要针对用户的输入错误问题,目前主要有两种验证方法:一是Spring自带的Validation校验框架,二是JSR303(JAVA验证规范)实现的校验功能。2.JSR303规范主要强调:

JSR.text

数据校验主要针对于用户的误输入问题,目前主要有两种方法进行验证输入,一种是Spring自带的Validation校验框架, 一种是JSR303(JAVA验证规范)实现校验功能。 2.JSR303规范 JSR规范主要是通过对JavaBean上的属性进行注解标识来进行验证。使用JSR303要导入Hibernate Validator的架包,包括 如下几个classmate-1.1.0.jar、hibernate-validator-5.2.4.Final.jar、hibernate-validator-annotation-processor-5.2.4.Final.jar、hibernate hibernate-validator-cdi-5.2.4.Final.jar、jboss-logging-3.2.1.Final.jar、validation-api-1.1.0.Final.jar。 常用的注解如下: @Null检查对象是否为空。@Null String des; @AssertTrue验证Boolean对象是否为true @AssertTure Boolean isEmpty; @Max(value)验证是否小于指定值 @Max(15) int age; @Min(value)验证是否大于指定值 @Min(12) int age; @Pattern 验证是否符合正则表达式 Hibernate Validator扩展的注解 @NotBlank 检查是否为空 @Email 检查Email地址是否合法 @Length(min,max)验证字符串长度是否符合指定范围 @Range(min,max,message) 验证属性范围是否在合适范围 JSR303例子: JavaBean注解 public class People { @NotBlank(message="登录名不能为空") private String loginname; @NotBlank(message="密码不能为空") @Length(min=6,max=8,message="密码长度必须在6位到8位之间") private String password; @NotBlank(message="用户名不能为空") private String username; @Range(min=15,max=60,message="年龄必须在15到60之间") private int age; @Email(message="必须是合法的邮箱地址") private String email; @DateTimeFormat(pattern="yyyy-MM-dd") /*@Past(message="生日必须是过去的日期")*/ private Date birthDate; JSP页面 登录名: 密码: 用户名: 年龄: 邮箱: 生日: 电话: 控制器: @RequestMapping(value="/people") @Controller public class PeopleController { private static final Log logger=LogFactory.getLog(PeopleController.class); @RequestMapping(value="/registerform",method=RequestMethod.GET) public String registerForm(Model model){ People people=new People(); model.addAttribute("people", people); return "registerform2"; } //通过@Valid注解标识需要验证的Javebean,后面使用Errors对象保存信息 @RequestMapping(value="/register",method=RequestMethod.POST) public String register(@Valid People people,Errors errors,Model model){ logger.info(people); if(errors.hasFieldErrors()){ return "registerform2"; }else{ model.addAttribute("people", people); return "welcome"; } } }

SpringMVC数据校验二,JSR规范如何实现?

本文共计583个文字,预计阅读时间需要3分钟。

SpringMVC数据校验二,JSR规范如何实现?

JSR.text 数据校验主要针对用户的输入错误问题,目前主要有两种验证方法:一是Spring自带的Validation校验框架,二是JSR303(JAVA验证规范)实现的校验功能。2.JSR303规范主要强调:

JSR.text

数据校验主要针对于用户的误输入问题,目前主要有两种方法进行验证输入,一种是Spring自带的Validation校验框架, 一种是JSR303(JAVA验证规范)实现校验功能。 2.JSR303规范 JSR规范主要是通过对JavaBean上的属性进行注解标识来进行验证。使用JSR303要导入Hibernate Validator的架包,包括 如下几个classmate-1.1.0.jar、hibernate-validator-5.2.4.Final.jar、hibernate-validator-annotation-processor-5.2.4.Final.jar、hibernate hibernate-validator-cdi-5.2.4.Final.jar、jboss-logging-3.2.1.Final.jar、validation-api-1.1.0.Final.jar。 常用的注解如下: @Null检查对象是否为空。@Null String des; @AssertTrue验证Boolean对象是否为true @AssertTure Boolean isEmpty; @Max(value)验证是否小于指定值 @Max(15) int age; @Min(value)验证是否大于指定值 @Min(12) int age; @Pattern 验证是否符合正则表达式 Hibernate Validator扩展的注解 @NotBlank 检查是否为空 @Email 检查Email地址是否合法 @Length(min,max)验证字符串长度是否符合指定范围 @Range(min,max,message) 验证属性范围是否在合适范围 JSR303例子: JavaBean注解 public class People { @NotBlank(message="登录名不能为空") private String loginname; @NotBlank(message="密码不能为空") @Length(min=6,max=8,message="密码长度必须在6位到8位之间") private String password; @NotBlank(message="用户名不能为空") private String username; @Range(min=15,max=60,message="年龄必须在15到60之间") private int age; @Email(message="必须是合法的邮箱地址") private String email; @DateTimeFormat(pattern="yyyy-MM-dd") /*@Past(message="生日必须是过去的日期")*/ private Date birthDate; JSP页面 登录名: 密码: 用户名: 年龄: 邮箱: 生日: 电话: 控制器: @RequestMapping(value="/people") @Controller public class PeopleController { private static final Log logger=LogFactory.getLog(PeopleController.class); @RequestMapping(value="/registerform",method=RequestMethod.GET) public String registerForm(Model model){ People people=new People(); model.addAttribute("people", people); return "registerform2"; } //通过@Valid注解标识需要验证的Javebean,后面使用Errors对象保存信息 @RequestMapping(value="/register",method=RequestMethod.POST) public String register(@Valid People people,Errors errors,Model model){ logger.info(people); if(errors.hasFieldErrors()){ return "registerform2"; }else{ model.addAttribute("people", people); return "welcome"; } } }

SpringMVC数据校验二,JSR规范如何实现?