【发布时间】:2015-03-02 14:38:25
【问题描述】:
我需要有一个持久实体类的列表,我需要有实体信息,使用 JPA 的反射 API
我有EntityManager,但我不知道是不是这样。
我想使用 EntityListener 为我的实体进行通用日志记录。这很好用,但我无法将侦听器注册到我的所有实体。
【问题讨论】:
标签: java jpa reflection eclipselink
我需要有一个持久实体类的列表,我需要有实体信息,使用 JPA 的反射 API
我有EntityManager,但我不知道是不是这样。
我想使用 EntityListener 为我的实体进行通用日志记录。这很好用,但我无法将侦听器注册到我的所有实体。
【问题讨论】:
标签: java jpa reflection eclipselink
使用 JPA2 元模型?它具有查看实体(或托管类型)的各种方法。
Set<javax.persistence.metamodel.EntityType<?>> entityTypes = entityManagerFactory.getMetamodel().getEntities();
for (javax.persistence.metamodel.EntityType entityType : entityTypes){
logger.info(entityType.getName());
logger.info(entityType.getJavaType().getCanonicalName());
logger.info("******************************");
}
【讨论】:
看看Configuration#getClassMappings()
返回:配置中当前包含的实体映射的迭代器。
【讨论】: