使用org.hibernate.event.Postbao的接口
例如
<code>
public class SavaOrUpdateListener implements PostInsertEventListener{
private static final long serialVersionUID = 1L;
public void onPostInsert(PostInsertEvent event){
System.out.println("event=============="+event.getEntity());//当前保存的实体
System.out.println("event=============="+event.getId());//改实体的id
System.out.println("event=============="+event.getPersister());//SingleTableEntityPersister(com.redsaga.domain.User)
System.out.println("event=============="+event.getState());
}
}
</code>
在hibernate.cfg下加上
<event type="post-commit-insert">
<listener class="com.redsaga.busness.event.SavaOrUpdateListener"/>
</event>
就可以了
在spring使用只有在hibernate3.1才加的新功能
<property name="eventListeners">
<map>
<entry key="post-commit-insert"><ref bean="SavaOrUpdateListener" /></entry>
</map>
</property>
<bean id="SavaOrUpdateListener" class="hibernate.event.SavaOrUpdateListener">
</bean>
其他的使用
<event type="post-commit-update">
</entry>
<event type="post-commit-delete" >
</entry>
例如
<code>
public class SavaOrUpdateListener implements PostInsertEventListener{
private static final long serialVersionUID = 1L;
public void onPostInsert(PostInsertEvent event){
System.out.println("event=============="+event.getEntity());//当前保存的实体
System.out.println("event=============="+event.getId());//改实体的id
System.out.println("event=============="+event.getPersister());//SingleTableEntityPersister(com.redsaga.domain.User)
System.out.println("event=============="+event.getState());
}
}
</code>
在hibernate.cfg下加上
<event type="post-commit-insert">
<listener class="com.redsaga.busness.event.SavaOrUpdateListener"/>
</event>
就可以了
在spring使用只有在hibernate3.1才加的新功能
<property name="eventListeners">
<map>
<entry key="post-commit-insert"><ref bean="SavaOrUpdateListener" /></entry>
</map>
</property>
<bean id="SavaOrUpdateListener" class="hibernate.event.SavaOrUpdateListener">
</bean>
其他的使用
<event type="post-commit-update">
</entry>
<event type="post-commit-delete" >
</entry>