cglibproxyfactory.java
来自「一个Java持久层类库」· Java 代码 · 共 63 行
JAVA
63 行
//$Id: CGLIBProxyFactory.java 9210 2006-02-03 22:15:19Z steveebersole $package org.hibernate.proxy.pojo.cglib;import java.io.Serializable;import java.lang.reflect.Method;import java.util.Set;import org.hibernate.HibernateException;import org.hibernate.proxy.ProxyFactory;import org.hibernate.proxy.HibernateProxy;import org.hibernate.engine.SessionImplementor;import org.hibernate.type.AbstractComponentType;/** * @author Gavin King */public class CGLIBProxyFactory implements ProxyFactory { protected static final Class[] NO_CLASSES = new Class[0]; private Class persistentClass; private String entityName; private Class[] interfaces; private Method getIdentifierMethod; private Method setIdentifierMethod; private AbstractComponentType componentIdType; private Class factory; public void postInstantiate( final String entityName, final Class persistentClass, final Set interfaces, final Method getIdentifierMethod, final Method setIdentifierMethod, AbstractComponentType componentIdType) throws HibernateException { this.entityName = entityName; this.persistentClass = persistentClass; this.interfaces = (Class[]) interfaces.toArray(NO_CLASSES); this.getIdentifierMethod = getIdentifierMethod; this.setIdentifierMethod = setIdentifierMethod; this.componentIdType = componentIdType; factory = CGLIBLazyInitializer.getProxyFactory(persistentClass, this.interfaces); } public HibernateProxy getProxy(Serializable id, SessionImplementor session) throws HibernateException { return CGLIBLazyInitializer.getProxy( factory, entityName, persistentClass, interfaces, getIdentifierMethod, setIdentifierMethod, componentIdType, id, session ); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?