你怎么分页的?难道自己写的代码分?你有判断最大记录数吗?你有用HIBERNATE的方法吗?query.setFirstResult()、query.setMaxResults()方法?具体代码是什么,别光贴这个上来,语句那么长,看的要死人的

解决方案 »

  1.   

    不是HQL吧,那么长的语句,狂汉
      

  2.   

    关键看你的 query.setFirstResult(xxx) 这个方法 中xxx的值 最好先 System.out.println(xxx); 看一下
    xxx的值是否<0 或大于你数据库中的整记录数.
      

  3.   

    select top 16 contentbea0_.Content_id as Content_id0_, jcolumn1_.COLUMN_ID as COLUMN_ID1_, wbppwebsit2_.WEBSITE_ID as WEBSITE_ID2_, contentbea0_.wbsite_id as wbsite_id0_, contentbea0_.column_id as column_id0_, contentbea0_.content_sub_title as content_4_0_, contentbea0_.content_second_title as content_5_0_, contentbea0_.content_key as content_6_0_, contentbea0_.content_Title as content_7_0_, contentbea0_.aClass_id as aClass_id0_, contentbea0_.bClass_id as bClass_id0_, contentbea0_.cClass_id as cClass_id0_, contentbea0_.pub_time as pub_time0_, contentbea0_.content_time as content12_0_, contentbea0_.modify_time as modify_13_0_, contentbea0_.publish_time as publish14_0_, contentbea0_.temp_type as temp_type0_, contentbea0_.type_id as type_id0_, contentbea0_.image_if as image_if0_, contentbea0_.image_path as image_path0_, contentbea0_.Content_temp_id as Content19_0_, contentbea0_.copywriter as copywriter0_, contentbea0_.S_content_id as S_conte21_0_, contentbea0_.receiver as receiver0_, contentbea0_.excerpt as excerpt0_, contentbea0_.status as status0_, contentbea0_.post_id as post_id0_, contentbea0_.content as content0_, contentbea0_.input_time as input_time0_, contentbea0_.cancel_time as cancel_28_0_, contentbea0_.level_id as level_id0_, contentbea0_.modify_writer as modify_30_0_, contentbea0_.mult_column_id as mult_co31_0_, contentbea0_.Dept_name as Dept_name0_, contentbea0_.Invalidate_time as Invalid33_0_, contentbea0_.title_Size as title_Size0_, contentbea0_.title_Color as title_C35_0_, contentbea0_.Link_url as Link_url0_, jcolumn1_.WEBSITE_ID as WEBSITE_ID1_, jcolumn1_.COLUMN_IDF as COLUMN_IDF1_, jcolumn1_.COLUMN_NAME as COLUMN_N4_1_, jcolumn1_.COLUMN_TITLE as COLUMN_T5_1_, jcolumn1_.STATUS as STATUS1_, jcolumn1_.CL_ADMIN as CL_ADMIN1_, jcolumn1_.CONTENT_enter as CONTENT_8_1_, jcolumn1_.Create_time as Create_t9_1_, jcolumn1_.Last_time as Last_time1_, jcolumn1_.Charge_if as Charge_if1_, jcolumn1_.CONTENT_PUB as CONTENT12_1_, jcolumn1_.Create_username as Create_13_1_, wbppwebsit2_.WEBSITE_NAME as WEBSITE_2_2_, wbppwebsit2_.STATUS as STATUS2_, wbppwebsit2_.WEBSITE_MANAGER as WEBSITE_4_2_ from wbpp_content contentbea0_, wbpp_column jcolumn1_, WBPP_WEBSITE wbppwebsit2_ where (contentbea0_.wbsite_id='WS10' )and(contentbea0_.column_id*=jcolumn1_.COLUMN_ID )and(contentbea0_.wbsite_id=wbppwebsit2_.WEBSITE_ID )and(contentbea0_.status in(2 , 1))and(contentbea0_.content_Title like ? )and(contentbea0_.level_id!=? )and(contentbea0_.wbsite_id='WS10' ) order by  contentbea0_.content_time desc , contentbea0_.modify_time desc , contentbea0_.input_time desc , contentbea0_.level_id desc 
    一条查询语句.................................................
      

  4.   

    我们有的HIBERNATE的分页方法 query.setFirstResult()、query.setMaxResults()方法都看过了
    一切正常。是在执行query.list()方法是出的异常。后来我们小组有Hibernate2的源码跑了一下
    。断点跟踪。发现异常是在habernate里面报出来的。我们这个项目是二次开发。更换过驱动的和spring的jar包
    异常出现的很奇怪。我们可能是jar包之间的匹配问题。但没有找到根源。如果那位高手遇到过类似的现象分享一下吧。
      

  5.   

    我估计你是给 query.setFirstResult 和 query.setMaxResults 出的问题
    你仔细检查 页面传进来的分页参数
      

  6.   

    真是惊天地,泣鬼神的HQL语句啊....
    呵呵...