从JPA获取@ Id的DataType

时间:2009-08-18 19:49:02

标签: java hibernate reflection jpa

我正在编写一个库,用于通过JPA对许多类型的EJB进行Hibernate。从JPA加载EJB时,库需要使用@Id注释的字段的数据类型。 @Id可以在EJB的超类上注释。 Hibernate或JPA中是否有一个方法可以获得@Id的数据类型?

我很想使用反射,但这需要递归和JPA中可能已经存在的代码。

1 个答案:

答案 0 :(得分:4)

如果你可以访问Hibernate SessionFactory,你可以调用sf.getClassMetaData("Your.Class.Name").getIdentifierType().getReturnedClass()(记得检查那段代码;)