Hibernate事件监听
来源:互联网 发布:奥运会没人申办知乎 编辑:程序博客网 时间:2024/04/29 00:02
-----------------------------------------------------hibernate.cfg.xml配置-----------------------------------------------------
<hibernate-configuration><session-factory> <property name="connection.url">jdbc:mysql:///ssh</property> <property name="connection.username">root</property> <property name="connection.password">1</property> <property name="connection.driver_class"> com.mysql.jdbc.Driver </property> <property name="dialect"> org.hibernate.dialect.MySQLDialect </property> <property name="hbm2ddl.auto">update</property> <property name="show_sql">true</property> <property name="format_sql">true</property> <!-- 确定使用二级缓存 --> <property name="cache.use_second_level_cache">true</property> <!-- 二级缓存由哪个类提供 一般使用OS缓存(JBoss缓存) --> <property name="cache.provider_class">org.hibernate.cache.OSCacheProvider</property> <mapping resource="model/Dept.hbm.xml" /> <mapping resource="model/User.hbm.xml" /> <!-- 哪些类需要缓存 这是一种配置方法,还可以在映射文件配置 <class-cache usage="read-write" class="model.user"/> --> <!-- 配置监听--> <event type="save"> <!-- 自己定义的 --> <listener class="listener.SaveOrUpdateListener"/> <!-- 默认的 --> <listener class="org.hibernate.event.def.DefaultSaveOrUpdateEventListener"/> </event> </session-factory></hibernate-configuration>
----------------------------------------------------------------监听器类------------------------------------------
package listener;import model.User;import org.hibernate.HibernateException;import org.hibernate.event.SaveOrUpdateEvent;import org.hibernate.event.SaveOrUpdateEventListener;@SuppressWarnings("serial")public class SaveOrUpdateListener implements SaveOrUpdateEventListener { public void onSaveOrUpdate(SaveOrUpdateEvent event) throws HibernateException { System.out.println("-------------start listener-----------------"); Object obj = event.getObject(); System.out.println(event.getObject()); if(obj instanceof User) { User user = (User)obj; System.out.println(user.getId());//这边的取值与你配置的监听器类的顺序有关系 } System.out.println("-------------end listener-----------------"); }}
-----------------------------------------------dao-----------------------------------------------------------------------------
//保存单个用户 public void save(User user)throws Exception { this.getHibernateTemplate().save(user); }
-------------------------------------------------------------------------------------------------------------------------------
HIbernate监听器主要是hibernate的一种扩展机制,可以把你自己的代码织入到框架里面去。
要注意的就是默认的保存的监听器。
- Hibernate事件监听
- hibernate事件监听
- Hibernate事件监听
- Hibernate的事件监听
- Hibernate 事件监听
- Hibernate数据拦截与事件监听
- Hibernate数据拦截与事件监听
- Hibernate数据拦截与事件监听
- 事件监听
- 事件监听
- 事件监听
- 监听事件
- 事件监听
- 事件监听
- 事件监听
- 事件监听
- 事件监听
- 事件监听
- java.lang.OutOfMemoryError: Java heap space + myeclipse中分配tomcat启...
- Scripting Package
- 教务系统总结四(思想)
- JSP企业面试题
- 解读Python内存管理机制
- Hibernate事件监听
- C++6.0调试篇:变量的观察--watch窗口的技巧
- 软件检测之缺陷模式库
- 跟踪方面最新论文
- 自定义消息处理示例
- 马云建言新同事:三年内需经看、信、思考等五步
- WCF一步一步往前爬(五)
- linux常用操作命令
- WP7编程 XNA框架中播放动画