2

我正在使用 Hibernate SessionFactory 从数据库中检索信息。问题是下面的“encrypted_field”数据库字段现在已加密并破坏了 SQL 查询。

这是我试图转换成 Hibernate 的旧 SQL 查询:

SELECT * FROM dictionary order by codetype DESC,code, LEN(encrypted_field) DESC

有没有办法在 Hibernate 中解决这个问题?我正在考虑一些 Hibernate 拦截器,它允许我在 Hibernate 将“order by”标准应用于 ResultSet 之前解密“encrypted_field”。这可能吗?

4

2 回答 2

1

一个想法:您为解密的字段创建一个瞬态字段。例如:

@ Transient
private String getDescryptedField () {
    return descrypt (encriptedField);
}
于 2011-10-08T17:46:31.257 回答
0

可能,拦截器可以解决您的问题(onLoad - 用于解密信息和 onSave 用于加密)?

于 2011-10-08T18:43:27.437 回答