1) Používáte HQL, takže musíte pochopit, že v projekcích dotazu HQL nemůžete zadat názvy sloupců, které jsou v databázi
String hql = "select user_id from login where user_name= :username and
password= :password";
Zde ve vaší třídě přihlášení nemáte pole jako user_id
a zadali jste user_id
do projekcí.HQL mapuje třídu s databází, proto třída Login bude přihlašovací tabulku a pole userId bude sloupcem user_id v databázi. A to, co jste napsal, je prostý SQL dotaz, nikoli HQL dotaz.
Použijte prosím tento dotaz HQL.
String hql="Select log.userId from Login log where log.username=:username and log.password=:password"
Zde log je alias, jako to děláme v prosté Javě.
Login log=new Login()
log.userId