public Iterator getName(String abc)throws HibernateException
    {
       String queryString = "select a from A as a where a.name like :name" ;
        beginTransaction();
        Query query = session.createQuery(queryString);
         query.setString("name", "%"+abc+"%");
        Iterator it= query.iterate();
        return it;
    }

解决方案 »

  1.   

    那如果我直接写hql语句呢?
    比如:
    String selName = "%"+Name+"%";//需要进行模糊查询
    String selectHQL = "select a from ABC as a where a.Name like ";
                StringBuffer buffer = new StringBuffer();
                buffer.append(selectHQL);
                buffer.append(selName);  
                return resultList;这样是不是也可以呢?
      

  2.   

    from A as a where a.name like %abc%
      

  3.   

    在下有这样一个hql语句,但是会报错:           
    String selectHql = "select count(u) from UserInfo(A表) as u,GULink(B表) as g where u.userName like ";
               StringBuffer buffer = new StringBuffer();
               buffer.append(selectHql);
               buffer.append("%"+userName+"%");
               buffer.append(" and g.groupId = ");
               buffer.append(groupSelId);
    请高手看看问题在哪好吗?谢谢。
      

  4.   

    什么报错信息?
    UserInfo和GULink是类明吗?
    这个buffer.append("%"+userName+"%");是不是以应该这样buffer.append("'%"+userName+"%'");
      

  5.   

    String selectHql = "select count(u) from UserInfo(A表) as u,GULink(B表) as g where u.userName like :";
               StringBuffer buffer = new StringBuffer();
               buffer.append(selectHql);
               buffer.append("%"+userName+"%");
               buffer.append(" and g.groupId =: ");
               buffer.append(groupSelId);
    Query query = session.createQuery(buffer.toString());
    query.setString("userName", abc);
    query.setString("groupSelId",123);
      

  6.   

    不需要用HQL,用Criteria可以解决绝大部份问题,而且更方便以下引用Hibernate2参考文档(Chapter 14. 条件查询(Criteria Query))List cats = sess.createCriteria(Cat.class)
        .add( Expression.like("name", "Fritz%") )  
        .add( Expression.between("weight", minWeight, maxWeight) )
        .list();