Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

selecionar consulta em hibernação com cláusula where


1) Você está usando HQL, então você precisa entender que não pode dar nomes de colunas que estão no banco de dados em projeções de consulta HQL
 String hql = "select user_id from login where user_name= :username and  
            password= :password";

Aqui na sua classe Login você não tem o campo como user_id e você deu user_id na classe de mapas de projeções.HQL com banco de dados, portanto, a classe Login fará login na tabela e o campo userId será a coluna user_id no banco de dados. E o que você escreveu é uma consulta SQL simples, não uma consulta HQL.

Por favor, use esta consulta HQL.
String hql="Select log.userId from Login log where log.username=:username and log.password=:password"

Aqui log é o nome do alias como fazemos em Java simples.
Login log=new Login()
log.userId