如何使用 Hibernate @ColumnTransformer加密 Postgres 中的列
2022-09-03 18:21:48
我正在尝试加密我的 prostrgres DB 中的列。列名是“bytea”类型的“test”。
我的 enity 代码如下,
@ColumnTransformer(
forColumn="test",
read="pgp_sym_encrypt(test::bytea, 'mySecretKey')",
write="pgp_sym_decrypt(?, 'mySecretKey')")
private String test;
当我尝试检索实体时,我得到了如下所示的加密数据。如何以编程方式获取解密的值?但是我得到的实际值,如果我执行一个postgres选择查询。
"test": "\\xc30d04070302474627ea0994ea657bd24401aaa5543862d57524a407e5dbe2ee0f6f0f33ea4f4474f5bc801dca5d32956d41a975505b12ac000f124177bdc2f4507cbfd724d716aaa513ba46f004dfefd3b2b32eb6"
- 当我尝试持久化实体时,我收到以下错误。
错误:列“test”的类型是 bytea,但表达式的类型是字符可变