Перехватить запрос Критерии гибернации - PullRequest
2 голосов
/ 17 августа 2011

Я использую Hibernate SessionFactory для извлечения информации из базы данных.Проблема в том, что поле базы данных «encrypted_field» ниже теперь зашифровано и прерывает SQL-запрос.

Это старый SQL-запрос, который я пытаюсь преобразовать в Hibernate:

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

IsЕсть ли способ исправить это в Hibernate?Я имею в виду некоторый перехватчик Hibernate, который позволит мне расшифровать поле «encrypted_field» как раз перед тем, как Hibernate применит критерии «упорядочить по» к ResultSet.Это возможно?

Ответы [ 2 ]

1 голос
/ 08 октября 2011

Одна идея: вы создаете переходное поле, чтобы поле расшифровывалось. Например:

@ Transient
private String getDescryptedField () {
    return descrypt (encriptedField);
}
0 голосов
/ 08 октября 2011

Возможно, перехватчики могут решить вашу проблему (onLoad - для информации о расшифровке и onSave для шифрования)?

...