Hibernate验证器.ppt

上传人:牧羊曲112 文档编号:6507053 上传时间:2023-11-07 格式:PPT 页数:22 大小:433.50KB
返回 下载 相关 举报
Hibernate验证器.ppt_第1页
第1页 / 共22页
Hibernate验证器.ppt_第2页
第2页 / 共22页
Hibernate验证器.ppt_第3页
第3页 / 共22页
Hibernate验证器.ppt_第4页
第4页 / 共22页
Hibernate验证器.ppt_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《Hibernate验证器.ppt》由会员分享,可在线阅读,更多相关《Hibernate验证器.ppt(22页珍藏版)》请在三一办公上搜索。

1、Hibernate ORM 最佳实践第11章 Hibernate 验证器,2,回顾,使用注释定义对象关系映射使用Hibernate Annotations建立一个项目利用注释进行各种对象关系映射利用注释定义命名查询,3,目标,了解Hibernate验证器框架使用Hibernate验证器内建约束Hibernate验证器国际化资源包学会编写自定义验证器对关联对象进行约束验证,4,创建Hibernate验证器,下载资源包:,Hibernate验证器提供在代码中使用注释来定义各种约束条件使用内建约束(Hibernate Validator本身定义)使用自定义约束,5,示例,内建约束Length,检查字

2、符串长度是否符合范围,内建约束NotNull,检查值是否非空,6,运行,保存约束没通过返回的具体信息,产生异常,不满足约束条件,7,结果,修改上述程序,将company的属性设置不为null,情况怎样?,8,结果,修改name的属性符合约束条件,9,内建约束,10,使用自定义约束,实现自己的约束:约束名称+约束实现类,使用约束描述符,interface定义约束名称,ValidatorClass(自定义验证器实现类),如:WebAddress(prefix=“http:/www.”),自定义验证器实现类必须实现接口:Validator,如果该验证器用来检查属性值,还要实现:PropertyCon

3、straint接口,实现方法isValid(),定义满足约束的条件 initialize()初试化约束属性,约束名称,约束属性,11,示例,自定义标记约束,要求Company的属性url以http:/www.开头,描述自定义验证器类,约束目标是属性,且在运行时读取使用,定义注解WebAddress,包含属性prefix、message,WebAddress.java,message是用于描述约束违规的默认字符串,它是强制要求的。,import static,Target(FIELD),12,自定义验证器代码,WebAddressValidator.java,实现接口,注解约束符的属性初始化We

4、bAddress(prefix=“http:/www.”),约束条件的设置,13,运行,自定义约束,14,结果,15,错误信息国际化,验证器能够根据不同环境返回符合国际化错误信息,利用的子类即 ListResourceBundle或PropertyResourceBundle资源绑定,16,示例,PropertyMessage.properties,PropertyMessage.properties,字符串能否从资源文件中获取?,17,运行,18,验证关联对象,如果在验证一个对象时,让验证器同时也验证其关联对象的约束,需要使用Valid约束,班级-学生,19,运行,因为在Tstudent中使

5、用Valid验证关联对象,所以InvalidValue包含Tunit对象的错误信息,20,注册验证器事件监听器,Hibernate Validator有两个内建Hibernate事件监听器。当一个PreInsertEvent或PreUpdateEvent发生时,监听器会验证该实体实例的所有约束,如有违反会抛出一个异常。基本上,在Hibernate执行任何插入和更新前对象会被检查。这是激活验证过程的最便捷最简单的方法。当遇到约束违规时,事件会引发一个运行时异常InvalidStateException,该异常包含一个描述每个错误的InvalidValue数组。,在配置文件中注册事件监听器,pre-insert,pre-update,21,示例,在hibernate-cfg.xml配置如下:,也可以通过编程方式注册监听器,使用Configuration类的setListener(事件名,监听类)方法来注册。,22,总结,了解Hibernate验证器框架使用Hibernate验证器内建约束Hibernate验证器国际化资源包学会编写自定义验证器对关联对象进行约束验证,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号