org.tinygroup.weblayer.webcontext.parser.util
类 CachedIntrospectionResults

java.lang.Object
  继承者 org.tinygroup.weblayer.webcontext.parser.util.CachedIntrospectionResults

public class CachedIntrospectionResults
extends Object

Internal class that caches JavaBeans PropertyDescriptor information for a Java class. Not intended for direct use by application code.

Necessary for own caching of descriptors within the application's ClassLoader, rather than rely on the JDK's system-wide BeanInfo cache (in order to avoid leaks on ClassLoader shutdown).

Information is cached statically, so we don't need to create new objects of this class for every JavaBean we manipulate. Hence, this class implements the factory design pattern, using a private constructor and a static forClass(Class) factory method to obtain instances.

从以下版本开始:
05 May 2001
作者:
Rod Johnson, Juergen Hoeller
另请参见:
acceptClassLoader(ClassLoader), clearClassLoader(ClassLoader), forClass(Class)

方法摘要
static void acceptClassLoader(ClassLoader classLoader)
          Accept the given ClassLoader as cache-safe, even if its classes would not qualify as cache-safe in this CachedIntrospectionResults class.
static void clearClassLoader(ClassLoader classLoader)
          Clear the introspection cache for the given ClassLoader, removing the introspection results for all classes underneath that ClassLoader, and deregistering the ClassLoader (and any of its children) from the acceptance list.
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

方法详细信息

acceptClassLoader

public static void acceptClassLoader(ClassLoader classLoader)
Accept the given ClassLoader as cache-safe, even if its classes would not qualify as cache-safe in this CachedIntrospectionResults class.

This configuration method is only relevant in scenarios where the Spring classes reside in a 'common' ClassLoader (e.g. the system ClassLoader) whose lifecycle is not coupled to the application. In such a scenario, CachedIntrospectionResults would by default not cache any of the application's classes, since they would create a leak in the common ClassLoader.

Any acceptClassLoader call at application startup should be paired with a clearClassLoader(java.lang.ClassLoader) call at application shutdown.

参数:
classLoader - the ClassLoader to accept

clearClassLoader

public static void clearClassLoader(ClassLoader classLoader)
Clear the introspection cache for the given ClassLoader, removing the introspection results for all classes underneath that ClassLoader, and deregistering the ClassLoader (and any of its children) from the acceptance list.

参数:
classLoader - the ClassLoader to clear the cache for


Copyright © 2006–2014 开源组织. All rights reserved.