OValJava 对象验证框架

联合创作 · 2023-09-30 05:30

OVal 是一个可扩展的Java对象数据验证框架,验证的规则可以通过配置文件、Annotation、POJOs 进行设定。可以使用纯 Java 语言、JavaScript 、Groovy 、BeanShell 等进行规则的编写。


允许用户:



  • 轻松按需验证对象,

  • 为类字段和getter方法的返回值指定验证约束,

  • 基于某些EJB3 JPA批注(即,所有要求非空值的字段批注)验证对象,

  • 通过注释,POJO和/或简单的XML文件配置约束,

  • 使用诸如JavaScriptGroovy, BeanShellOGNLMVEL的脚本语言来表达约束

  • 轻松创建自定义约束,以及

  • 开发新的约束配置机制。


示例代码:



private static class TestEntity
{
@Min(1960)
private int year = 1977;

@Range(min=1, max=12)
private int month = 2;

@ValidateWithMethod(methodName = "isValidDay", parameterType = int.class)
private int day = 31;

private boolean isValidDay(int day)
{
GregorianCalendar cal = new GregorianCalendar();
cal.setLenient(false);
cal.set(GregorianCalendar.YEAR, year);
cal.set(GregorianCalendar.MONTH, month - 1);
cal.set(GregorianCalendar.DATE, day);
try {
cal.getTimeInMillis(); // throws IllegalArgumentException
} catch (IllegalArgumentException e) {
return false;
}
return true;
}
}
浏览 19
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报