All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hibernate.bytecode.package.html Maven / Gradle / Ivy

There is a newer version: 6.5.0.CR1
Show newest version



	
	
		

This package defines the API for plugging in bytecode libraries for usage by Hibernate. Hibernate uses these bytecode libraries in three scenarios:

  1. Reflection optimization - to speed up the performance of POJO entity and component conctruction and field/property access
  2. Proxy generation - runtime building of proxies used for deferred loading of lazy entities
  3. Field-level interception - build-time instrumentation of entity classes for the purpose of intercepting field-level access (read/write) for both lazy loading and dirty tracking.

Note that for field-level interception, simply plugging in a new {@link BytecodeProvider} is not enough for Hibernate to be able to recognize new providers. You would additionally need to make appropriate code changes to the {@link 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 {@link org.hibernate.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).





© 2015 - 2024 Weber Informatics LLC | Privacy Policy