读书人

(六)Hibernate 中的监听器和拦截器

发布时间: 2012-10-28 09:54:44 作者: rapoo

(6)Hibernate 中的监听器和拦截器

Hibernate 就总结这么多,本来还有集合过滤,过滤器这一块的,但这次的例子只有一张表就使用。

?

针对 SaveOrUpate 的监听器(针对 Save 没有解决)

监听器com.isw2.Bean.MySaveListener.java

?监听器注册方式2(类HibernateSessionFactory.java 中 Eclipse 自动生成)

/** * 在 SessionFactory 中使用 Interceptory 拦截器 *  * @param interceptor * @return * @throws HibernateException */public static Session getSessionFactoryInterceptor(Interceptor interceptor)throws HibernateException {Session session = (Session) threadLocal.get();if (session == null || !session.isOpen()) {// 设置Interceptor 拦截器configuration.setInterceptor(interceptor);sessionFactory = configuration.buildSessionFactory();session = (sessionFactory != null) ? sessionFactory.openSession(interceptor) : null;threadLocal.set(session);}return session;}/** * Session 中启用Interceptor *  * @param interceptor * @return * @throws HibernateException */public static Session getSessionInterceptor(Interceptor interceptor)throws HibernateException {Session session = (Session) threadLocal.get();if (session == null || !session.isOpen()) {if (sessionFactory == null) {rebuildSessionFactory();}session = (sessionFactory != null) ? sessionFactory.openSession(interceptor) : null;threadLocal.set(session);}return session;}

?关于过滤器和集合过滤器可以参考:

http://42087743.iteye.com/blog/305219?

http://blog.csdn.net/javacoffe/archive/2007/08/09/1733579.aspx

?

读书人网 >软件架构设计

热点推荐