Сначала вы должны получить пользователя из базы данных. Если пользователь не существует, покажите сообщение на странице входа. Все ваши логины должны быть в столбце unique
, поэтому вам не нужно нажимать ограничение uniqueResult
.
Во-вторых, после того, как вы подключили пользователя, вы просто сравниваете хеш пароля и, если все в порядке, позволяют пользователю пройти.
Вышеуказанное упростит вашу логику Hibernate и, следовательно, облегчит поиск и устранение неисправностей вашего кода.
Вот как это делают большинство сайтов. По крайней мере, насколько я понимаю.