Hibernate验证器

Hibernate验证器

ID:36841074

大小:847.31 KB

页数:22页

时间:2019-05-10

Hibernate验证器_第1页
Hibernate验证器_第2页
Hibernate验证器_第3页
Hibernate验证器_第4页
Hibernate验证器_第5页
资源描述:

《Hibernate验证器》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

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

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

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

4、idator.java实现接口注解约束符的属性初始化@WebAddress(prefix=“http://www.”)约束条件的设置12运行自定义约束13结果14错误信息国际化验证器能够根据不同环境返回符合国际化错误信息利用java.util.ResourceBundle的子类即ListResourceBundle或PropertyResourceBundle资源绑定15示例PropertyMessage.propertiesPropertyMessage.properties字符串能否从资源文件中获取?16运行17验证关联对象如果在验证一个对象时,让验证器同时也验证其关联对象的

5、约束,需要使用@Valid约束班级-学生18运行因为在Tstudent中使用@Valid验证关联对象,所以InvalidValue[]包含Tunit对象的错误信息19注册验证器事件监听器①HibernateValidator有两个内建Hibernate事件监听器。当一个PreInsertEvent或PreUpdateEvent发生时,监听器会验证该实体实例的所有约束,如有违反会抛出一个异常。②基本上,在Hibernate执行任何插入和更新前对象会被检查。这是激活验证过程的最便捷最简单的方法。当遇到约束违规时,事件会引发一个运行时异常InvalidStateException,该异

6、常包含一个描述每个错误的InvalidValue数组。在配置文件中注册事件监听器pre-insertpre-updateorg.hibernate.validator.event.ValidateEventListenerorg.hibernate.validator.event.ValidatePreInsertEventListenerorg.hibernate.validator.event.ValidatePreUpdateEventListener20示例在hibernate-cfg.xml配置如下:也可以通过编程方式注册监听器,使用Configuration类的set

7、Listener(事件名,监听类)方法来注册。21总结了解Hibernate验证器框架使用Hibernate验证器内建约束Hibernate验证器国际化资源包学会编写自定义验证器对关联对象进行约束验证22

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。