类 DefaultContextLoadTimeWeaver
- java.lang.Object
- org.springframework.context.weaving.DefaultContextLoadTimeWeaver
- 所有已实现的接口:
Aware,BeanClassLoaderAware,DisposableBean,LoadTimeWeaver
public class DefaultContextLoadTimeWeaver extends Object implements LoadTimeWeaver, BeanClassLoaderAware, DisposableBean
DefaultLoadTimeWeaverbean for use in an application context, decorating an automatically detected internalLoadTimeWeaver.Typically registered for the default bean name "
loadTimeWeaver"; the most convenient way to achieve this is Spring's<context:load-time-weaver>XML tag.This class implements a runtime environment check for obtaining the appropriate weaver implementation: As of Spring 4.0, it detects Oracle WebLogic 10, GlassFish 3, Tomcat 6, 7 and 8, JBoss AS 5, 6 and 7, IBM WebSphere 7 and 8,
Spring's VM agent, and anyClassLoadersupported by Spring'sReflectiveLoadTimeWeaver.- 从以下版本开始:
- 2.5
- 作者:
- Juergen Hoeller, Ramnivas Laddad, Costin Leau
- 另请参阅:
ConfigurableApplicationContext.LOAD_TIME_WEAVER_BEAN_NAME
构造器概要
构造器 构造器 说明 DefaultContextLoadTimeWeaver()DefaultContextLoadTimeWeaver(ClassLoader beanClassLoader)
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 voidaddTransformer(ClassFileTransformer transformer)Add aClassFileTransformerto be applied by thisLoadTimeWeaver.protected LoadTimeWeavercreateServerSpecificLoadTimeWeaver(ClassLoader classLoader)voiddestroy()Invoked by the containingBeanFactoryon destruction of a bean.ClassLoadergetInstrumentableClassLoader()Return aClassLoaderthat supports instrumentation through AspectJ-style load-time weaving based on user-definedClassFileTransformers.ClassLoadergetThrowawayClassLoader()Return a throwawayClassLoader, enabling classes to be loaded and inspected without affecting the parentClassLoader.voidsetBeanClassLoader(ClassLoader classLoader)Callback that supplies the beanclass loaderto a bean instance.
构造器详细资料
DefaultContextLoadTimeWeaver
public DefaultContextLoadTimeWeaver()
DefaultContextLoadTimeWeaver
public DefaultContextLoadTimeWeaver(ClassLoader beanClassLoader)
方法详细资料
setBeanClassLoader
public void setBeanClassLoader(ClassLoader classLoader)
从接口复制的说明:BeanClassLoaderAwareCallback that supplies the beanclass loaderto a bean instance.Invoked after the population of normal bean properties but before an initialization callback such as
InitializingBean'sInitializingBean.afterPropertiesSet()method or a custom init-method.- 指定者:
setBeanClassLoader在接口中BeanClassLoaderAware- 参数:
classLoader- the owning class loader; may benullin which case a defaultClassLoadermust be used, for example theClassLoaderobtained viaClassUtils.getDefaultClassLoader()
createServerSpecificLoadTimeWeaver
protected LoadTimeWeaver createServerSpecificLoadTimeWeaver(ClassLoader classLoader)
destroy
public void destroy()
从接口复制的说明:DisposableBeanInvoked by the containingBeanFactoryon destruction of a bean.- 指定者:
destroy在接口中DisposableBean
addTransformer
public void addTransformer(ClassFileTransformer transformer)
从接口复制的说明:LoadTimeWeaverAdd aClassFileTransformerto be applied by thisLoadTimeWeaver.- 指定者:
addTransformer在接口中LoadTimeWeaver- 参数:
transformer- theClassFileTransformerto add
getInstrumentableClassLoader
public ClassLoader getInstrumentableClassLoader()
从接口复制的说明:LoadTimeWeaverReturn aClassLoaderthat supports instrumentation through AspectJ-style load-time weaving based on user-definedClassFileTransformers.May be the current
ClassLoader, or aClassLoadercreated by thisLoadTimeWeaverinstance.- 指定者:
getInstrumentableClassLoader在接口中LoadTimeWeaver- 返回:
- the
ClassLoaderwhich will expose instrumented classes according to the registered transformers
getThrowawayClassLoader
public ClassLoader getThrowawayClassLoader()
从接口复制的说明:LoadTimeWeaverReturn a throwawayClassLoader, enabling classes to be loaded and inspected without affecting the parentClassLoader.Should not return the same instance of the
ClassLoaderreturned from an invocation ofLoadTimeWeaver.getInstrumentableClassLoader().- 指定者:
getThrowawayClassLoader在接口中LoadTimeWeaver- 返回:
- a temporary throwaway
ClassLoader; should return a new instance for each call, with no existing state