⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scheduledinsertion.java

📁 用Java实现的23个常用设计模式源代码
💻 JAVA
字号:
//$Id: ScheduledInsertion.java,v 1.5.2.8 2003/11/02 04:26:43 oneovthafew Exp $package net.sf.hibernate.impl;import java.io.Serializable;import net.sf.hibernate.HibernateException;import net.sf.hibernate.engine.SessionImplementor;import net.sf.hibernate.persister.ClassPersister;final class ScheduledInsertion extends ScheduledEntityAction implements SessionImpl.Executable{	private final Object[] state;	private CacheEntry cacheEntry;		public ScheduledInsertion(Serializable id, Object[] state, Object instance, ClassPersister persister, SessionImplementor session) 	throws HibernateException {		super(session, id, instance, persister);		this.state = state;	}		public void execute() throws HibernateException {		ClassPersister persister = getPersister();		SessionImplementor session = getSession();		Object object = getInstance();				// Don't need to lock the cache here, since if someone		// else inserted the same pk first, the insert would fail				persister.insert( getId(), state, object, session );		session.postInsert(object);				if ( persister.hasCache() ) {			cacheEntry = new CacheEntry(object, persister, session);			persister.getCache().insert( getId(), cacheEntry );		}	}		//Make 100% certain that this is called before any subsequent ScheduledUpdate.afterTransactionCompletion()!!	public void afterTransactionCompletion(boolean success) throws HibernateException {		if (success) {			ClassPersister persister = getPersister();			if ( persister.hasCache() ) persister.getCache().afterInsert( getId(), cacheEntry );		}	}	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -