我需要有一个作为持久性实体的clasess列表,我需要有实体信息,使用JPA的Reflection API
我有EntityManager,但我不知道是不是这样。
我想使用EntityListener为我的实体执行通用日志记录。这很好用,但我没办法将监听器注册到我的所有实体。
答案 0 :(得分:1)
查看Configuration#getClassMappings()
返回:配置中当前包含的实体映射的迭代器。
答案 1 :(得分:1)
使用JPA2 MetaModel?它有各种方法来查看实体(或托管类型)。
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("******************************");
}