1
我目前正在创建一些POJO来连接到名为User的现有数据库。该数据库已经有一个我想要使用的用户标识。然而,框架创建一个id字段,它附加到表的末尾。我怎样才能指定框架应该使用预先存在的userid字段而不是创建一个新的?如何更改Play框架中的默认JPA ID字段?
我目前正在创建一些POJO来连接到名为User的现有数据库。该数据库已经有一个我想要使用的用户标识。然而,框架创建一个id字段,它附加到表的末尾。我怎样才能指定框架应该使用预先存在的userid字段而不是创建一个新的?如何更改Play框架中的默认JPA ID字段?
您可以使用@AttributeOverride
:
@Entity
@AttributeOverride(name = "id", column = @Column(name = "userid"))
public class User extends Model { ... }
要定义您自己的主键,让您的模型扩展GenericModel而不是模型,并使用@Id注释您的主键。模型类使用自动生成的id来增强通用模型。
class User extends GenericModel{
@Id
Long userid;
}