Reputation: 8810
I have an entity which is declared roughly like:
@Entity
@Table(name = "myUserTable")
public class User implements Serializable { ... }
I'm making a generic DAO class, and in doing so I'd like to retrieve the "myUserTable" name. Is there any way I can reach this name?
Upvotes: 15
Views: 20401
Reputation: 403441
Easy enough using general reflection:
import javax.persistence.Table;
.....
Class<?> c = User.class;
Table table = c.getAnnotation(Table.class);
String tableName = table.name();
Upvotes: 31
Reputation: 7937
Similar to Get the table name from the model in Hibernate
Table table = Entity.class.getAnnotation(Table.class);
String tableName = table.name();
Upvotes: 8