gpt4 book ai didi

java - Spring、Hibernate基于不同数据库的类型映射

转载 作者:行者123 更新时间:2023-12-02 01:26:26 29 4
gpt4 key购买 nike

我有这样的东西来定义实体类中的 hibernate 类型映射:

@Entity
@Table(name = "TEST_TABLE")
public class Test {

@Type( type = "jsonb" )
@Column(name = "CONTENT_FILES")
private List<ContentFile> contentFiles;

}

它将实体字段映射到自定义定义的 hibernate 类型 jsonb 以支持 PostgreSQL DB。

我想将映射更改为另一个 Hibernate 自定义类型 json 以支持 MSSQL DB。

我可以在同一个实体类中支持这两种映射吗?

我尝试使用@Profile注释,但它不起作用。

@Profile("pgsql")
@Type( type = "jsonb" )
@Profile("mssql")
@Type( type = "json" )
@Column(name = "CONTENT_FILES")
private List<ContentFile> contentFiles;

最佳答案

根据 PostgreSQL 文档,json 和 jsonb 两种数据类型几乎相同。因此,您不必维护两种不同的数据类型来在 MSSQL 和 PostgreSQL 中保留 json 。请引用以下链接 PostgreSQL documentation.

关于java - Spring、Hibernate基于不同数据库的类型映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56850809/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com