11

目前,查询采用单个 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 不兼容

4

1 回答 1

16

试试这个

 query.setParameterList("reportID", new Object[]{"aaa","bbb"});
于 2012-11-22T13:08:54.597 回答