Предположим, у меня есть сущность User
, подобная этой:
class User {
private String login;
transient private String hashedPassword;
}
Я не хочу когда-либо передавать hashedPassword
клиентам, поэтому я делаю его временным.
Этот класс отображается в Hibernate, причем оба поля отображаются в hbm.xml.
Является ли эта реализация безопасной и правильной? Будет ли Hibernate правильно хранить hashedPassword
в базе данных, загружать его в объекты из базы данных, хранить его в реплицированном кэше 2-го уровня и локальном кэше сеанса и т. Д.?
Другими словами, соблюдает ли Hibernate или кеш 2-го уровня ] transient
каким-либо образом или полностью игнорировать его?
РЕДАКТИРОВАТЬ : Я уже получил два ответа, которые, похоже, не включали один конкретный аспект уравнения. Я вообще не использую аннотации, только отображения XML в hbm.xml
. И это временное поле Java преобразуется по ИЛИ в hbm.xml
.