2009-08-24 58 views
11

获取注释休眠的tablename我有声明大致是这样的实体:从POJO

@Entity 
@Table(name = "myUserTable") 
public class User implements Serializable { ... } 

我正在做一个通用的DAO类,并在这样做,我想找回“myUserTable”名称。有什么办法可以达到这个名字?

回答

22

易于使用足够一般反映:

import javax.persistence.Table; 

..... 

Class<?> c = User.class; 
Table table = c.getAnnotation(Table.class); 
String tableName = table.name(); 
+0

嗯....我不能org.hibernate.annotations.Table找到名称()。我正在看正确的表班吗? – niklassaers 2009-08-24 07:36:11

+0

不,您正在查看JPA的Hibernate专有扩展。您需要javax.persistence.Table。 – skaffman 2009-08-24 07:37:23