Spring整合hibernate后如何获得动态查询的信息条数

    xiaoxiao2021-12-14  43

    Spring整合hibernate后,动态查询需要用到内部类,如何获得总信息条数?  下面是代码演示:

    public Integer findCountByInfo(final Map<String, Object> salChance) {//通过动态条件获得总信息数

    StringBuffer hql=new StringBuffer("select count(*) FROM SalChance s WHERE 1=1");

     //下面是动态添加查询条件

    if(salChance!=null){

    if(salChance.get("name")!=null&&!("").equals(salChance.get("name"))){

    hql.append(" and s.chcCustName like :name");

    }

    if(salChance.get("title")!=null&&!("").equals(salChance.get("title"))){

    hql.append(" and s.chcTitle like :title");

    }

    if(salChance.get("linkman")!=null&&!("").equals(salChance.get("linkman"))){

    hql.append(" and s.chcLinkman like :linkman");

    }

    final String typeSql = new String(hql);

    Long logs=this.getHibernateTemplate().execute(new HibernateCallback() {

     

    @Override

    public Object doInHibernate(Session session)

    throws HibernateException, SQLException {

    Query q=session.createQuery(typeSql);

    q.setProperties(salChance);

    return q.uniqueResult();

    }

    });

    return logs.intValue();

    }

    return null;

    }

    转载请注明原文地址: https://ju.6miu.com/read-970938.html

    最新回复(0)