I am profiling an application built on top of Hibernate. The profile tool is OptimizeIt.
The application appears to create a lot of classes of the form:
com.acme.model.company.Company$$ProxiedByCGLIB$$64
com.acme.model.company.Company$$ProxiedByCGLIB$$65
com.acme.model.company.Company$$ProxiedByCGLIB$$72
...and there is only ever one instance of each of these classes.
Under heavy load, the VM created more than a thousand such class definitions in a 24 hour period. I presume this behavior is related to Hibernate 'wrapping' domain classes to give them persistent behavior.
I can understand that if I have 24 (persistent) domain classes in my application, that there should be 24 Hibernate 'wrapper' counterparts. Why are there so many duplicate 'wrapper' classes for each domain class; and only ever one instance of those wrappers? This behavior seems really inefficient.
Any advice?
Thanks in advance,
Dayle
dayle.woolston@nextpage.com