HibernateValidators
public final class HibernateValidators {
private static final Validator VALIDATOR;
private HibernateValidators() {
}
static {
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
VALIDATOR = factory.getValidator();
}
public static <T> Set<ConstraintViolation<T>> validate(T object, Class<?>... groups) {
return VALIDATOR.validate(object, groups);
}
/**
* @throws IllegalArgumentException 当校验有错误的时候抛出异常
*/
public static <T> void throwsIfInvalid(T object, Class<?>... groups) {
final Set<ConstraintViolation<T>> constraintViolations = validate(object, groups);
if (!constraintViolations.isEmpty()) {
final ImmutableMap.Builder<String, String> errorBuilder = ImmutableMap.builder();
for (ConstraintViolation<T> violation : constraintViolations) {
errorBuilder.put(violation.getPropertyPath().toString(), violation.getMessage());
}
throw new IllegalArgumentException(errorBuilder.build().toString());
}
}
}
HibernateValidators的更多相关文章
- 【转载】springMVC表单校验+全注解
		
在这篇文章中,我们将学习如何使用Spring表单标签, 表单验证使用 JSR303 的验证注解,hibernate-validators,提供了使用MessageSource和访问静态资源(如CSS, ...
 - spring mvc:练习:表单验证(javaConfig配置和注解)
		
使用Spring表单标签, 表单验证使用 JSR303 的验证注解,hibernate-validators,提供了使用MessageSource和访问静态资源(如CSS,JavaScript,图片) ...
 - Spring4 MVC表单验证
		
在这篇文章中,我们将学习如何使用Spring表单标签, 表单验证使用 JSR303 的验证注解,hibernate-validators,提供了使用MessageSource和访问静态资源(如CSS, ...
 
随机推荐
- 此主机支持Intel VT-x,但Intel VT-x处于禁用状态
			
原因:未开启虚拟化技术 解决方法:https://www.cnblogs.com/jiefu/p/10711955.html
 - 《剑指offer》字符串的排列
			
本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:
 - centos查看系统/硬件信息及运维常用命令
			
[root@yan-001 ~] # uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令 [root@yan-001 ~] # head -n 1 /etc/issue # ...
 - 将LibreOffice文档转换为豆瓣日记
			
豆瓣日记的编辑器一直以来都只支持纯文本的,因此无法将原先在LibreOffice中写的带有简单格式的文章导出.由于我在豆瓣主要写一些随笔性的内容,所以它们在LibreOffice中排版时也并未用到什么 ...
 - 第四次java实验
			
java实验 实验一: 要求 Android Stuidio的安装测试: 参考<Java和Android开发学习指南(第二版)(EPUBIT,Java for Android 2nd)>第 ...
 - UOJ#195. 【ZJOI2016】大♂森林 LCT
			
原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ195.html 题解 首先询问都可以放到最后处理. 对于操作,我们把它差分一下离线下来. 现在的问题就是从 ...
 - python实现Hbase
			
1. 下载thrift 作用:翻译python语言为hbase语言的工具 2. 运行时先启动hbase 再启动thrift,最后在pycharm中通过happybase包连接hbase 在hbase目 ...
 - Centos6.5部署vsftpd+mysql认证
			
1.FTP传输原理 FTP,文件传输协议,是工作在应用层,基于TCP实现,依赖于互联网即可通讯. 1)连接模式 控制(命令)连接,用来通信,一直在线,客户端随机端口连接服务端TCP:21端口. 数据连 ...
 - JAVA时间工具类,在维护的项目里的
			
package com.inspur.jobSchedule.util; import org.apache.commons.lang3.time.DateUtils; import org.apac ...
 - TopCoder Div2
			
代码附在文末. 多组数据一定要初始化啊啊啊 贪心要[大胆]猜想,小心证明 A 题目翻译 题目描述 有两个正整数A和B,两个操作+3或者-2. 问,至少多少次操作可以让A变到B 输入 多组数据,第一行一 ...