📄 defaultupdateeventlistener.java
字号:
//$Id: DefaultUpdateEventListener.java,v 1.2 2005/02/22 03:09:35 oneovthafew Exp $package org.hibernate.event.def;import java.io.Serializable;import org.hibernate.HibernateException;import org.hibernate.ObjectDeletedException;import org.hibernate.EntityMode;import org.hibernate.engine.EntityEntry;import org.hibernate.engine.Status;import org.hibernate.event.SaveOrUpdateEvent;import org.hibernate.persister.entity.EntityPersister;/** * An event handler for update() events * @author Gavin King */public class DefaultUpdateEventListener extends DefaultSaveOrUpdateEventListener { protected Serializable performSaveOrUpdate(SaveOrUpdateEvent event) { // this implementation is supposed to tolerate incorrect unsaved-value // mappings, for the purpose of backward-compatibility EntityEntry entry = event.getSession().getPersistenceContext().getEntry( event.getEntity() ); if ( entry!=null ) { if ( entry.getStatus()==Status.DELETED ) { throw new ObjectDeletedException( "deleted instance passed to update()", null, event.getEntityName() ); } else { return entityIsPersistent(event); } } else { entityIsDetached(event); return null; } } /** * If the user specified an id, assign it to the instance and use that, * otherwise use the id already assigned to the instance */ protected Serializable getUpdateId(Object entity, EntityPersister persister, Serializable requestedId, EntityMode entityMode) throws HibernateException { if ( requestedId==null ) { return super.getUpdateId(entity, persister, requestedId, entityMode); } else { persister.setIdentifier(entity, requestedId, entityMode); return requestedId; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -