10
我正在使用JPA(Hibernate作为我的JPA提供程序)。我真的试图避免休眠细节并使用JPA规范。我有一个初始化懒惰实体的函数。不幸的是,它使用Hibernate特定的功能。这是我的功能:初始化懒惰实体的标准JPA方法
private T initializeAndUnproxy(T entity) {
if (entity == null) {
throw new
NullPointerException("Entity passed for initialization is null");
}
Hibernate.initialize(entity);
if (entity instanceof HibernateProxy) {
entity = (T) ((HibernateProxy) entity).getHibernateLazyInitializer().getImplementation();
}
return entity;
}
是否有任何纯粹的JPA方式来初始化实体?
关于最后一句:我从来没有使用它,但如何使用Entitygraphs获取完整的实体(https://docs.oracle.com/javaee/7/api/javax/persistence/EntityGraph.html)?是否有可能获取实体的实体图并将其元模型的所有惰性属性作为AttributeNodes添加到它(然后获取它)? –