2012-11-22 75 views
8

當前查詢採用單個reportID返回結果。現在,如果我想傳遞多個報告ID並在1次調用數據庫中返回o/p,我該怎麼做?將參數數組設置爲休眠查詢語言

String queryText = "from com.abc.domain.bcd.Report report where report.reportID in :reportId"; 

    Query query = SessionFactory.getCurrentSession().createQuery(queryText.toString()); 

    query.setParameter("reportID", reportId); 

    query.list(); 

我試着作爲arrayList傳遞,但沒有運氣。獲得如下

List<String> reportID= new ArrayList<String>(); 
    reportID.add("aaa"); 
    reportID.add("bbb"); 

java.util.ArrayList中的錯誤與不兼容java.lang.String中

回答

12

試試這個

query.setParameterList("reportID", new Object[]{"aaa","bbb"}); 
+0

感謝一噸!.. – dazzle

+0

如何傳遞的String [] reportID作爲參數 – priyadarshini