我正在使用 Spring Data JPA 和
hbm2ddl.auto=update
。我定义了一个具有复合主键的实体(使用 @EmbeddedId
)。 我可以在建表的时候定义组合键的顺序吗?也就是说,是(userid, token)
还是(token, userid)
。
Hibernate 将使用实体属性顺序生成 DDL 脚本。虽然您可以覆盖可嵌入的列名称,但无法指定列顺序。
因为@EmbeddedId会生成复合主键,所以无论如何都会自动生成索引。您只需确保 SELECT 语句 ORDER BY 子句使用与复合 id 相同的列序列,以使索引解析尽可能高效。