我是否需要为hibernate表的主键添加索引anoatation以获得不错的性能,我假设使用@id标记字段意味着创建了索引
@Id
private String guid;
但我没有注意到在生成的ddl中创建的任何内容
但是如果我添加了@index注释
@Id
@org.hibernate.annotations.Index(name = "IDX_GUID")
private String guid;
然后我注意到在DDL中创建了一个索引。
所以我认为我需要为每个表执行此操作,但我的一部分认为这是非常必要的,因为hibernate肯定希望为主键创建索引作为起点?
答案 0 :(得分:6)
您不必显式创建索引。而不是看DDL语句;我建议你检查一下hibernate创建的最终模式。索引是作为create table语句的一部分创建的。