|
||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
BasicProxyFactory | A proxy factory for "basic proxy" generation |
BytecodeProvider | Contract for providers of bytecode services to Hibernate. |
ClassTransformer | A persistence provider provides an instance of this interface to the PersistenceUnitInfo.addTransformer method. |
ProxyFactoryFactory | An interface for factories of proxy factory instances. |
ReflectionOptimizer | Represents reflection optimization for a particular class. |
ReflectionOptimizer.AccessOptimizer | Represents optimized entity property access. |
ReflectionOptimizer.InstantiationOptimizer | Represents optimized entity instantiation. |
Class Summary | |
---|---|
AbstractClassTransformerImpl | Basic implementation of the ClassTransformer contract. |
InstrumentedClassLoader | A specialized classloader which performs bytecode enhancement on class definitions as they are loaded into the classloader scope. |
This package defines the API for plugging in bytecode libraries for usage by Hibernate. Hibernate uses these bytecode libraries in three scenarios:
Currently, both CGLIB and Javassist are supported out-of-the-box.
Note that for field-level interception, simply plugging in a new BytecodeProvider
is not enough for Hibernate to be able to recognize new providers. You would additionally
need to make appropriate code changes to the org.hibernate.intercept.Helper
class. This is because the detection of these enhanced classes is needed in a static
environment (i.e. outside the scope of any SessionFactory
.
Note that in the current form the ability to specify a different bytecode provider is actually considered a global settings (global to the JVM).
|
||||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |