1

Я хочу получить интроспекцию имени таблицы объекта, управляемого Hibernate (в ленивом).introspection - имя таблицы объекта, управляемого Hibernate (JavassistLazyInitializer)

мой объект содержит «org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer» в обработчике свойств.

мой объект имеет тип «mypackage.myObjectDO_ _javassist_2 $ $» и не содержит аннотаций, которые содержит класс «mypackage.myObjectDO» (я ищу аннотацию javax.persistence.Table).

Как я могу это сделать?

ответ

0

Я хочу пройти интроспекцию имени таблицы объекта, управляемого Hibernate (в ленивом).

Это необычная потребность (Hibernate должен абстрагироваться, что далеко), но предположим, что вы на самом деле нужно ...

мой объект типа (...) и не содержит аннотации, которые класс (...) содержит

Вам нужно будет освободить прокси-сервер. Вот немного метод из a previous answer (от Bozho):

public static <T> T initializeAndUnproxy(T var) { 
    if (var == null) { 
     throw new IllegalArgumentException("passed argument is null"); 
    } 

    Hibernate.initialize(var); 
    if (var instanceof HibernateProxy) { 
     var = (T) ((HibernateProxy) var).getHibernateLazyInitializer() 
       .getImplementation(); 
    } 
    return var; 
} 

Смотрите также в форумах Hibernate Converting proxy object to the real thing.

Смежные вопросы