在java中,列表中表达式的最大数量为1000

在java中,列表中表达式的最大数量为1000,java,hibernate,Java,Hibernate,我必须在DAO(Hibernate)中的sqlquery中传递1000多条记录。但是下面的代码给了我一个错误:“在java中,列表中表达式的最大数量是1000” 这是oracle的限制,您不能传递超过1000个元素的列表。最简单的方法是将列表分成n子列表,每个子列表的大小小于1000,并对每个子列表执行查询,然后合并结果。这是oracle的限制,您不能传递长度超过1000个元素的列表。最简单的方法是在n子列表中划分每个小于1000的列表,并对每个子列表执行查询,然后合并结果。此外,我尝试使用di

我必须在DAO(Hibernate)中的sqlquery中传递1000多条记录。但是下面的代码给了我一个错误:“在java中,列表中表达式的最大数量是1000”


这是oracle的限制,您不能传递超过1000个元素的列表。最简单的方法是将列表分成
n
子列表,每个子列表的大小小于1000,并对每个子列表执行查询,然后合并结果。

这是oracle的限制,您不能传递长度超过1000个元素的列表。最简单的方法是在
n
子列表中划分每个小于1000的列表,并对每个子列表执行查询,然后合并结果。

此外,我尝试使用disjuction,但由于它不是集合,我无法将其传递给sqlQuery。setParameterList()是否尝试将列表拆分为更小的部分?此外,我尝试使用disjuction,但是,由于它不是集合,我无法将其传递给sqlQuery.setParameterList()您是否尝试将列表拆分为更小的部分?私有析取addCriteriaIn(String modelList,LinkedList Models){ArrayList test=null;析取析取析取析取析取=Restrictions.析取();if(Models.size()>1000){while(Models.size()>1000){java.util.List subList=Models.subList(0,1000);dis.add(Restrictions.in(“modelist”,subList));Models.subList(0,1000).clear();}}dis.add(Restrictions.in(“modelist”,Models));//test.add(dis);返回dis;//.add(dis);}我尝试过使用析取,但它不能用于sqlQuery.setParameterList现在有什么问题吗?如果(postFilter.getModels()!=null){Models=postFilter.getModels();析取测试=addCriteriaIn(“modelList”,Models);sqlQuery.setParameterList(“modelList”,test);}sqlQuery.setParameterList不允许我传递析取,它给出了错误:类型查询中的方法setParameterList(String,Collection)不适用于参数(String,析取)私有析取addCriteriaIn(String modelList,LinkedList Models){ArrayList test=null;析取析取析取=限制。析取();if(Models.size()>1000){while(Models.size()>1000){java.util.List subList=Models.subList(0,1000);dis.add(Restrictions.in(“modelsist”,subList));Models.subList(0,1000).clear();}}dis.add(Restrictions.in(“modelsist”,Models));//test.add(dis);return dis;//.add(dis)(dis);})我尝试过使用析取,但它不能用于sqlQuery.setParameterList现在有什么问题吗?如果(postFilter.getModels()!=null){Models=postFilter.getModels();析取测试=addCriteriaIn(“modelList”,Models);sqlQuery.setParameterList(“modelList”,test);}sqlQuery.setParameterList不允许我传递析取,它给出了错误:类型查询中的方法setParameterList(String,Collection)不适用于参数(String,析取)
try{
        session =HibernateFactoryUtil.getTessSessionFactory().openSession();    
        String genQuery = new TmsAssetDataQueryUtil().genFilterBasedAssetDataQuery(filterBean);         
        SQLQuery sqlQuery = session.createSQLQuery(genQuery); 
        if(postFilter.getModels()!= null)   { sqlQuery.setParameterList("modelList",postFilter.getModels()); }         }