Pregunta

convierta el sql en hql

Declaración SQL : s elija el nombre de usuario de useraccout donde email = " valor de parámetro "

Más descripción:

mientras ejecuto el código, aparece este error:

public  List dispUser(String email){
    Query query = em.createQuery("SELECT u.username FROM Useraccout u WHERE u.email=:email)");
    query.setParameter(email, email);
    List search = query.getResultList();
    return search;
}

mientras ejecuto el código, aparece el siguiente error

java.lang.IllegalArgumentException: org.hibernate.hql.ast.QuerySyntaxException:
Useraccout is not mapped [SELECT u.username FROM Useraccout u WHERE u.email=:email1)]
        at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:624)
        at org.hibernate.ejb.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:96)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
¿Fue útil?

Solución

Parece que no ha asignado una clase llamada Useraccount . Mi conjetura es que cualquiera de las dos:

  • Has mapeado una clase llamada Useraccount y has escrito incorrectamente el nombre de esta clase en la consulta
  • No has asignado ninguna clase. Esto indica que no entiendes los conceptos básicos de Hibernate. En resumen, cada clase que se asigna a una tabla de base de datos debe definir esta asignación mediante un archivo XML o anotaciones.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top