我正在将ORM框架从Hibernate切换到OpenJPA。
在Hibernate中,我们可以使用@ColumnTransformer注释一个字段,如下所示。
@Column(name = "EMP_NAME", length = 4000)
@ColumnTransformer(
read = "pgp_pub_decrypt(emp_name::bytea,dearmor('"+key1+"'))",
write = "pgp_pub_encrypt(?, dearmor('"+key2+"'))"
)
private String empName;
如何在OpenJPA中执行相同的操作
答案 0 :(得分:2)
我不确定与此相关的OpenJPA特定功能,但以下两个替代方案适用于所有JPA提供商:
这两种解决方案的另一个好处是可以保持实体不受自定义本机SQL的影响。