我们在项目中使用了两个数据库:postgres和h2(用于测试) 另外,我们在postgres中使用jsonb类型,但是h2没有这种类型。 为了使测试有效,我必须解决此问题。
想法是在h2中的帐户字段中使用VARCHAR sql类型,并以字符串形式处理json。
我想在运行时为休眠@Type设置类型值,例如:
@Column(name = "accounts")
@Type(type = "${dynamic_type}")
private List<Long> accounts;
要使用两个值之一,即type =“ jsonb”或type =“ my.company.JsonList,取决于dbms类型(postgresql / h2)。
我已经尝试使用SpEl,但是会导致错误,因为注释中没有值参数
有可能吗?
在不同的配置文件(测试/开发)中处理各种数据库方案(不同的数据类型)的最佳实践是什么?