2009-08-18 101 views
2

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

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

回答

4

如果你能得到的Hibernate的SessionFactory你可以调用sf.getClassMetaData("Your.Class.Name").getIdentifierType().getReturnedClass()(记住要空检查代码;)

+0

非常感谢。这工作! – User1 2009-08-25 16:42:01