成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Hibernate攔截器與監聽器

開發 后端
攔截器與事件都是Hibernate的擴展機制,Interceptor接口是老的實現機制,現在改成事件監聽機制;他們都是Hibernate的回調接口,Hibernate在調用save、delete、update...這些方法的時候會回調這個類。

攔截器與事件都是Hibernate的擴展機制,Interceptor接口是老的實現機制,現在改成事件監聽機制;他們都是Hibernate的回調接口,Hibernate在調用save、delete、update...這些方法的時候會回調這個類。

Hibernate3.0之前攔截器跟java中的過濾器很像的。

Hibernate3.0之后把攔截器改成事件監聽了。

saveOrUpdateEventListener接口:

保存和更新數據的時候會被Hibernate監聽到。

例子:

if(event.getObject() instanceof com.cos.User){

//如果這個事件是操作User對象的,就執行if里面的代碼

}

把監聽器告訴Hibernate:

監聽器SaveListener.java:

Java代碼

  1. package com.cos.listener;     
  2.     
  3. import org.hibernate.HibernateException;     
  4. import org.hibernate.event.SaveOrUpdateEvent;     
  5. import org.hibernate.event.SaveOrUpdateEventListener;     
  6.     
  7. public class SaveListener implements SaveOrUpdateEventListener {     
  8.     
  9.     @Override    
  10.     public void onSaveOrUpdate(SaveOrUpdateEvent event)     
  11.             throws HibernateException {     
  12.         if(event.getObject() instanceof com.cos.entity.User){     
  13.             System.out.println("保存User之前的操作");     
  14.         }     
  15.     }     

 

Hibernate配置文件:

Xml代碼

  1.     "-//Hibernate/Hibernate Configuration DTD 3.0//EN"     
  2.     "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">    
  3. <hibernate-configuration>    
  4.     <session-factory>    
  5.         <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialectproperty>    
  6.         <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driverproperty>    
  7.         <property name="hibernate.connection.url">jdbc:mysql:///testproperty>    
  8.         <property name="hibernate.connection.username">property>    
  9.         <property name="hibernate.connection.password">property>    
  10.         <property name="hibernate.show_sql">trueproperty>    
  11.         <property name="hibernate.hbm2ddl.auto">createproperty>    
  12.         <mapping resource="com/cos/entity/User.hbm.xml"/>    
  13.         <event type="save">    
  14.             <listener class="com.cos.listener.SaveListener"/>    
  15.             <listener class="org.hibernate.event.def.DefaultSaveOrUpdateEventListener"/>    
  16.         event>    
  17.     session-factory>    
  18. hibernate-configuration>    

 

 

 

可以看到兩個監聽器,一個是自己的監聽器、一個是缺省的監聽器。兩個監聽器哪個在前就先執行哪個監聽器。

【編輯推薦】

  1. Hibernate批量更新與刪除實例淺析
  2. 簡述Hibernate Synchronizer學習筆記
  3. Hibernate column屬性簡介
  4. 概括Hibernate查詢語言
  5. Hibernate cartridge學習總結
責任編輯:金賀 來源: ITEYE博客
相關推薦

2012-02-03 13:27:16

2009-09-27 17:46:22

Hibernate監聽

2009-09-27 17:37:32

Hibernate攔截

2009-01-03 13:37:26

Oracle監聽器Oracle服務器Oracle網絡配置

2009-07-08 17:39:23

Servlet監聽器

2011-03-21 16:21:49

Oracle監聽口令監聽器

2009-06-24 16:00:00

2020-04-20 11:09:49

過濾器監聽器 Web

2025-02-28 08:14:53

2023-09-05 08:58:07

2023-11-01 07:55:03

事件監聽器傳遞數據

2010-01-13 09:49:09

注釋監聽器Listener

2011-06-01 14:55:24

Android Service 監聽器

2009-07-06 13:48:53

Servlet監聽器

2010-04-23 18:00:31

2010-02-22 15:06:31

WCF信道監聽器

2009-11-09 10:03:09

WCF通道監聽器

2023-01-06 08:55:00

2011-11-21 14:21:26

SpringMVCJava框架

2025-05-09 08:20:50

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲一区中文字幕在线观看 | 国产免费一区二区 | 狠狠色综合久久丁香婷婷 | 91在线免费视频 | 天堂在线91| 国产精品久久久久久妇女6080 | 337p日本欧洲亚洲大胆 | 亚洲一区 中文字幕 | 日韩免费成人av | 国产成人麻豆免费观看 | 日本一区二区三区免费观看 | 欧美日韩在线观看一区二区三区 | 国产精品美女久久久久久免费 | 中文字幕亚洲一区二区三区 | 日本视频一区二区 | 久久久久久综合 | 精品视频亚洲 | 免费视频一区二区三区在线观看 | 欧美一区二区三区在线观看 | 亚洲人va欧美va人人爽 | 久久久99国产精品免费 | 欧美精品一区三区 | 日本精品一区二区三区在线观看视频 | 一区二区三区欧美 | 一区二区三区视频在线 | 亚洲逼院| 99免费精品 | 97国产精品视频 | 国产高清视频在线 | 天堂在线免费视频 | 亚洲天堂影院 | 亚洲一区中文字幕 | 久久精品国产一区二区电影 | 亚洲视频一区在线观看 | 毛色毛片免费看 | 91人人在线 | 一区二区三区电影在线观看 | 男女搞网站 | 91久久 | 99爱国产| 中文字幕日韩欧美一区二区三区 |