企业如何通过vue小程序开发满足高效运营与合规性需求
476
2023-07-05
springmvc的@Validated注解使用
1. 校验的错误信息, 可以直接在bean属性上配置, 也可以在properties中配置。
2. 将校验器bean配置到注解驱动上
3. 在需要校验的pojo前边添加@Validated,在需要校验的pojo后边添加BindingResult bindingResult接收校验出错信息
注意:@Validated和BindingResult bindingResult是配对出现,并且形参顺序是固定的(一前一后)。
使用validated所需配置:
1. jar包
2. application.xml
3. testErrMessage.properties文件
文件结构:
文件内容:
4. bean的配置, 省略get/set方法
public class ValidBean {
//直接配置错误信息
@NotBlank(message="用户名不能为空", groups= {UserGroup1.class})
private String name;
@Max(value=120, message="年龄最大为120")
private Integer age;
// 使用配置文件中的错误信息, properties中的key: message="{key}"。 {}:占位符
@NotBlank(message="{validator.user.address}")
private String address;
}
5. controller
@Controller
@RequestMapping("/test/")
public class ValidTestController {
/**
*
* @desc: 校验没有分组的属性
* @auth: zona
* 2017年2月19日 下午2:35:42
* @param bean
* @param bindingResult
* @return
*/
@RequestMapping("valid")
@ResponseBody
public Result testValid(@Validated ValidBean bean, BindingResult bindingResult) {
Result result = new Result();
Map retMap = new HashMap();
StringBuilder sb = new StringBuilder();
if(bindingResult.hasErrors()) {
List
for (ObjectError err : errors) {
sb.append(err.getDefaultMessage()+"; ");
}
result.setErrInfo(sb.toString());
result.setErrNo(1);
return result;
}
retMap.put("bean", bean);
result.success();
result.setData(retMap);
return result;
}
/**
*
* @desc: 仅对属于userGroup组的属性进行校验
* @auth: zona
* 2017年2月19日 下午2:37:03
* @param bean
* @param bindingResult
* @return
*/
@RequestMapping("group/valid")
@ResponseBody
public Result testGroupValid(@Validated(value=UserGroup1.class) ValidBean bean, BindingResult bindingResult) {
Result result = new Result();
Map retMap = new HashMap();
StringBuilder sb = new StringBuilder();
if(bindingResult.hasErrors()) {
List
for (ObjectError err : errors) {
sb.append(err.getDefaultMessage()+"; ");
}
result.setErrInfo(sb.toString());
result.setErrNo(1);
return result;
}
retMap.put("bean", bean);
result.success();
result.setData(retMap);
return result;
}
}
测试结果:
只校验没有分组的属性
校验UserGroup1组的属性
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~