Domanda

converti sql in hql

Dichiarazione SQL : s seleziona nome utente da useraccout dove email = " valore parametro "

Altre descrizioni:

durante l'esecuzione del codice visualizzo questo errore:

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;
}

durante l'esecuzione del codice viene visualizzato il seguente errore

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)
È stato utile?

Soluzione

Sembra che tu non abbia mappato una classe chiamata Useraccount . La mia ipotesi è che:

  • Hai mappato una classe denominata Useraccount e hai digitato il nome di questa classe in modo errato nella query
  • Non hai mappato alcuna classe. Ciò indica che non capisci le basi di Hibernate. In breve, ogni classe che si associa a una tabella di database deve definire questa mappatura usando un file XML o annotazioni.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top