如何用where子句编写HQL查询

时间:2014-05-06 11:17:38

标签: spring hibernate

我想从db中检索值,基于jsp文本框值,请为此建议我准确的HQL查询:

从表中选择all = name和密码= pwd

我已经通过这种方式尝试过上述工作,但在

中出错了
getHibernateTemplate().find("from User where Employee_Name= ?"+ a);

错误 - :

java.lang.reflect.InvocationTargetException

3 个答案:

答案 0 :(得分:2)

你可以这样做

Query query = session.createQuery("from User where Employee_Name= :name");
query.setParameter("name", "asdf");
List list = query.list();

或者您可以像第一个答案那样做

答案 1 :(得分:0)

似乎问题在于预付费声明,您必须使用

hibernatemplate.find(String queryString,Object value)

在这里查看更多spec

希望这段代码能解决它。

getHibernateTemplate().find("from User where Employee_Name=?",a);

答案 2 :(得分:0)

 Query query=session.createQuery("from User where Employee_Name= "+"'en'"+ 
 "and Employee_Pass= " + "'pwd'");

    List<User> list=query.list(); 

    Iterator<User > itr=list.iterator();  
    while(itr.hasNext()){  
        User q=itr.next();  
  

使用User类的getter方法获取所有值

    }