现在的位置: 首页 > 综合 > 正文

HibernateCallBack原理以及利用回调接口优化代码结构

2018年05月22日 ⁄ 综合 ⁄ 共 1363字 ⁄ 字号 评论关闭

 Hibernate 为我们提供一套很好的数据持久化解决方案,同时Spring也为我们封装了很多模板方法,比如

实现HibernateDaoSupport后得到模板操作对象以及一些回调接口,如HibernateCallback,jdbcTemplete等,这些模板方法

大大的减少了我们的代码量,同时使得代码干净明了,今天谈谈我对HibernateCallBack的理解以及应用

首先,我们定义一个回调接口,回调接口的参数是一个上下问参数

 

 

定义个一模块操作类,将Hibernate中常用的OpenSession ,CloseSession,以及一些事物处理抽取出来作为模板对象

 

 

其中 action.invoke(session);是回调的关键,在JdbcTemplete中,action是一个接口,在实际调用过程中,使用匿名的内部类实现该接口,进行调用,如:

 

这样,我们就不用在每个持久化对象中定义,openSession ,closeSession等方法,可完全把这些代码放置到模板类中,不仅仅减少了代码量,同时代码也更加简洁

 

 

 

抱歉!评论已关闭.