java效验器,springMVC校验器(validator)

深入理解java虚拟机 jvm高级与佳三

87.8元

包邮

(需用券)

去购买 >

9544978e5b5e461c343f870f1a8ab48a.png

springmvc使用的是Hibernate Validator(和Hibernate的ORM无关)来完成校验功能

一.普通校验

1.导入jar包

2.编写校验错误配置文件

068ed58808b984543e114a59e8482cd3.png

72740b678836ed0222665ac2f1ec7c02.png

3.配置校验错误信息文件

classpath:ItemValidationMessages

4.配置校验器

5.将校验器注入到适配器中

6.类属性中定义规则

@Size(min=1,max=30,message="{item.itemname.length.erro}")privateString itemname;

@NotNull(message="{item.price.isNULL}")private Double price;

7.在controller中处理数据错误

/*1.在需要校验的pojo前边添加注解@Validated,在需要校验的pojo后面添加BindingResult bindingResult接收校验出错信息

注意:@Validated和BindingResult bindingResult是配对出现的,并且形参顺序是固定的(一前一后)

value={ItemGroup1.class}:指定使用ItemGroup1的分组校验*/@RequestMapping("/editItemSubmit")publicModelAndView editItemSubmit(HttpServletRequest request,@Validated(value={ItemGroup1.class}) ItemCustom itemCustom, BindingResult bindingResult) throwsException{//如果有错误

if(bindingResult.hasErrors()) {//获取错误信息

List allErrors =bindingResult.getAllErrors();

ModelAndView modelAndView= newModelAndView();//将错误信息传到jsp页面中

modelAndView.addObject("allErrors", allErrors);

modelAndView.setViewName("item/editItem");returnmodelAndView;

}

itemService.updateItem(itemCustom);

ModelAndView modelAndView = new ModelAndView("redirect:/item/queryItems.action");

return modelAndView;

}

8.测试

二.分组校验

分组校验其实就是为了我们的校验更加灵活,有的时候,我们并不需要把我们当前配置的属性都进行校验,而需要的是当前的方法仅仅校验某些的属性。那么此时,我们就可以用到分组校验了...

1.定义分组的接口【主要是标识】

946bf298998123d69d69926c7318830b.png

2638aeaae3d48755d017ddd708d2d7fc.png

2.定于校验规则属于哪一各组

groups:指定此校验属性属于哪个分组(接口)

@Size(min=1,max=30,message="{item.itemname.length.erro}",groups={ItemGroup1.class,ItemGroup2.class})privateString itemname;

@NotNull(message="{item.price.isNULL}",groups={ItemGroup2.class})private Double price;

3.在Controller方法中定义使用校验分组

红色部分:@Validated(value={ItemGroup1.class})

@RequestMapping("/editItemSubmit")publicModelAndView editItemSubmit(HttpServletRequest request,

@ModelAttribute("itemCustom") @Validated(value={ItemGroup1.class}) ItemCustom itemCustom, BindingResult bindingResult,MultipartFile item_pic) throws Exception{

原文链接:https://www.cnblogs.com/lyh233/p/12049876.html

java程序设计与数据结构(第4版)

116.1元

包邮

(需用券)

去购买 >

1bfc949d131c9dd9018581360eb2222f.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值