使用这些注释的重点是独立于数据库提供程序,而不是重新生成JAR存档。
如果我强调@Table (name = myDatabase.myTableName)
我不会在第一时间看到使用休眠的重点。如果我决定切换到另一个数据库提供程序,那么我将不得不修改我的类中的@Table (name = myDatabase.myTableName)
注释,并重新编译该应用程序。
答案 0 :(得分:5)
@Table 注释: @Table注释允许您指定将用于在数据库中保留实体的表的详细信息。
@Table注释提供了四个属性,允许您覆盖表的名称,目录及其架构,并对表中的列强制执行唯一约束。现在我们只使用表名,即EMPLOYEE。
@Entity
@Table(name = "EMPLOYEE")
public class Employee {
@Id @GeneratedValue
@Column(name = "id")
private int id;
}
只需在此处添加表名,并且不需要数据库名称来提供java代码。 http://docs.oracle.com/javaee/5/api/javax/persistence/Table.html