(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
?