【发布时间】:2023-03-28 01:43:01
【问题描述】:
如何使用 Hibernate 正确注释 PostgreSQL GIN 索引?
@Index(...)
String text;
hibernate 是默认创建 GIN 索引,还是我必须在某处设置特殊属性?
【问题讨论】:
标签: java hibernate postgresql
如何使用 Hibernate 正确注释 PostgreSQL GIN 索引?
@Index(...)
String text;
hibernate 是默认创建 GIN 索引,还是我必须在某处设置特殊属性?
【问题讨论】:
标签: java hibernate postgresql
看起来您不能直接使用 Hibernate 的注释创建自定义索引。请参阅相关:How to use Hibernate Annotations to add an index on a Lob / Clob / tinyblob,其中一个答案提到了如何使用辅助对象进行操作。
在您的情况下,我会在启动时查询系统目录(information_schema 或 pg_catalog)以获取索引,如果未找到,则使用本机 SQL 执行 CREATE INDEX 语句。
有关在 Hibernate 中创建触发器的非常相似的问题,请参阅 this answer。
【讨论】: