资讯专栏INFORMATION COLUMN

根据xml配置校验bean

lemanli / 2938人阅读

摘要:例子参考自官方文档,官方文档的配置有点过期了,一两个属性不合法。类,测试类,配置,输出结果,

例子参考自官方文档,http://oval.sourceforge.net/u...
官方文档的xml配置有点过期了,一两个属性不合法。

├─src
│  ├─main
│  │  ├─java
│  │  │  └─com
│  │  │      └─honey
│  │  │          ├─collection
│  │  │          └─oval
│  │  └─resources

Userbean类,

package com.honey.oval;

public class User {
    private String firstName;
    private String lastName;
    private String managerId;
    private String userId;

    public User() {

    }
    public User(String firstName, String lastName) {
        this.firstName = firstName;
        this.lastName = lastName;
    }

    public void setPasswordExpirationDays(int days) {

    }

}

OvalAppTest测试类,

package com.honey;

import com.honey.oval.User;
import net.sf.oval.ConstraintViolation;
import net.sf.oval.configuration.xml.XMLConfigurer;
import net.sf.oval.guard.Guard;

import java.util.List;


public class OvalAppTest {

    public static void main(String[] args) {
        User user = new User("honey", "wang");
        XMLConfigurer xmlConfigurer = new XMLConfigurer(ClassLoader.class.getResourceAsStream("/oval-config.xml"));

        Guard guard = new Guard(xmlConfigurer);
        List constraintViolationList = guard.validate(user);
        System.out.println(constraintViolationList);
    }
}

xml配置,src/resources/oval-config.xml



    
    
        
        
            
        
    

    
    
    

        
            
        

        
            
        

        
        
            
            
        

        
            
            
        

        
        
            
            
                
            

            
            
            
        

        
        
            
            
                
            
        
    

输出结果,

[net.sf.oval.ConstraintViolation: com.honey.oval.User.managerId cannot be null, net.sf.oval.ConstraintViolation: com.honey.oval.User.firstName is not between 0 and 3 characters long, net.sf.oval.ConstraintViolation: com.honey.oval.User.userId cannot be null]

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/69129.html

相关文章

  • 深入了解数据校验Bean Validation 2.0(JSR380)

    摘要:可能有人认为数据校验模块并不是那么的重要,因为硬编码都可以做。我以数据绑定为引子引出了数据校验这一块,是想表明它的重要性。关于数据校验这块,最新的是,也就是我们常说的。 每篇一句 吾皇一日不退役,尔等都是臣子 对Spring感兴趣可扫码加入wx群:Java高工、架构师3群(文末有二维码) 前言 前几篇文章在讲Spring的数据绑定的时候,多次提到过数据校验。可能有人认为数据校验模块...

    wangtdgoodluck 评论0 收藏0
  • Spring解密 - 默认标签的解析

    Spring是一个开源的设计层面框架,解决了业务逻辑层和其他各层的松耦合问题,将面向接口的编程思想贯穿整个系统应用,同时它也是Java工作中必备技能之一... 前言 紧跟上篇 Spring解密 - XML解析 与 Bean注册 ,我们接着往下分析源码 解密 在 Spring 的 XML 配置里面有两大类声明,一个是默认的如 ,另一类就是自定义的如,两种标签的解析方式差异是非常大的。parseBe...

    snowLu 评论0 收藏0
  • Learn Spring - Spring MVC

    摘要:例如,将请求信息中的字符串格式参数转换为对应方法中的类类型入参可通过的属性注册自定义转换器。 1. 处理流程 请求提交给DispatchServlet 查找HandlerMapping 调用由HandlerAdapter封装后的Handler 返回ModelAndView到DispatcherServlet 借由ViewResolver完成逻辑视图到真实视图的转换 返回响应 2. ...

    DesGemini 评论0 收藏0
  • Java设计模式综合运用(动态代理+Spring AOP)

    摘要:动态代理的核心是接口和类。以上结果说明它生成的代理类为,说明是代理。测试前提实现接口测试类使用接口方式注入代理方式必须以接口方式注入测试配置为,运行结果如下实际校验逻辑。。。。 本文也同步发布至简书,地址:https://www.jianshu.com/p/f70... AOP设计模式通常运用在日志,校验等业务场景,本文将简单介绍基于Spring的AOP代理模式的运用。 1. 代理模...

    王晗 评论0 收藏0
  • 从深处去掌握数据校验@Valid的作用(级联校验

    摘要:如果说要使用数据校验,我十分相信小伙伴们都能够使用,但估计大都是有个前提的环境。具体使用可参考小家让支持对平铺参数执行数据校验默认使用只能对进行校验级联校验什么叫级联校验,其实就是带校验的成员里存在级联对象时,也要对它完成校验。 每篇一句 NBA里有两大笑话:一是科比没天赋,二是詹姆斯没技术 相关阅读 【小家Java】深入了解数据校验:Java Bean Validation 2.0(...

    BlackFlagBin 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<