向Hibernate管理的架构中添加自定义索引的最简单方法?

时间:2019-04-06 00:54:12

标签: postgresql hibernate

我的代码与此问题中显示的代码非常相似:Hibernate custom schema creation

尽管代码相同,但我的具体问题不同:

如何强制Hibernate生成其他自定义索引?例如,不能在注释中表达的PostgreSQL部分索引?

到目前为止,我已经尝试过:

  • 搜索过的谷歌
  • 搜索到
  • 阅读文档
  • 检查Javadocs

不想手动维护索引的主要原因是将CI / CD与一次性数据库一起使用,这些数据库在每次初始化新环境时都会重新构建。

1 个答案:

答案 0 :(得分:0)

因为您需要使用postgresql特定的代码(hibernate不知道),所以您必须在hibernate之外创建索引。
您可以做的是在.sql文件中编写索引语句(您可能知道要索引的表/列的确切名称),并在休眠完成数据库创建后立即运行它。 最简单的方法是将该文件放在类路径上并命名为import.sql。您可以在here上找到更多信息。

无论如何,我强烈建议使用某种数据库版本控制管理器(例如,flyway),而不要在休眠状态下进行中继以生成表。