当前位置: 代码迷 >> J2SE >> 这个方法要如何调用
  详细解决方案

这个方法要如何调用

热度:68   发布时间:2016-04-24 00:34:46.0
这个方法要怎么调用
protected List find(String hql,List params) {
List list=new ArrayList();
try{
//1、获取Session
session =HibernateSessionFactory.getSession();
//2、拼写hql语句
//3、创建执行语句对象
Query query=session.createQuery(hql);

//传参
if(params!=null && params.size()>0){
for(int i=0;i<params.size();i++){
query.setParameter(i, params.get(i));
}
}

//4、执行并返回结果
list=query.list();

}catch (Exception e) {

System.out.println("根据传入的hql语句,获取查询结果错误:"+e.getMessage());
}finally{
//session.close();
}
return list;
}

------解决方案--------------------
Java code
你这个应该是dao需要拿到这方法的类的一个实例 然后 两个参数 :hql 和  paramsprotected List find(String hql,List params) {两个参数 :hql 和  paramshql  类似一下写法String hql = " from " + MyPojo.class.getName() + "  where myProp1 = ? and myProp2= ?" ;List params = new ArrayList() ;params.add("第1条件值") ;params.add("第2条件值") ;List retList = find(hql, params) ;返回的List中均为 MyPojo类的对象;MyPojo.java 如下 :public class MyPojo{    private String myProp1 ;    private String myProp2 ;        public String getMyProp1() {        return myProp1;    }    public void setMyProp1(String myProp1) {        this.myProp1 = myProp1;    }    public String getMyProp2() {        return myProp2;    }    public void setMyProp2(String myProp2) {        this.myProp2 = myProp2;    }}//根据你的实际pojo传递 ,此处为 示例 ,如有 误导 ,敬请原谅...
  相关解决方案