我正在使用Hibernate 5和PostgreSQL11。我检查了dialects,最新的是PostgreSQL95Dialect
。
在拥有较新版本的数据库时应该使用什么?
我假设使用PostgreSQL95Dialect
并没有什么大问题,但这对我来说是错误的,尤其是数据库可能会进一步升级,并且将来可以更无缝地更新更紧密的版本。
原因:
原因是,我关心方言,所以我想介绍Hibernate不支持的新类型jsonb
,所以我希望尽可能以方言方式接近现代DB版本。好吧。
答案 0 :(得分:2)
如果您打算使用PostgreSQL 11功能,则可能应该自己实现方言。
在Hibernate 6.0中引入了新的PostgreSQL10Dialect
。在实现自己的 script:
- VERSION=$(curl -Ss --request GET --header "PRIVATE-TOKEN: <REPLACE_BY_A_VARIABLE>" "https://gitlab.com/api/v4/projects/${CI_PROJECT_ID}/repository/tags" | jq -r '.[0] | .name')
- test -z "$VERSION" && echo "no version tag found" && exit 1
时,您可能希望遵循相同的方法,即扩展PostgreSQL11Dialect
并添加所需的功能。
答案 1 :(得分:1)
最新的官方休眠GitHub存储库为PostgreSQL10Dialect。但是,latest official documentation仍未引用该地址。