我现在用在用struts做一个新闻管理系统,我想知道发布新闻的内容进行分页显示应该怎么实现呢?大家给点思路

解决方案 »

  1.   

    1.你可以把数据放入Session 里然后控制读取量
    2.你可以直接从数据库选择读取时指针指向第几行数据
    3.好多
      

  2.   

    两条sql语句。
    1:  select count(*) from 表。
    2:select * from 表 order by desc id limit 0,10   (从第一条,取10条)
    第二次就是
    select * from 表 order by desc id limit 10,10
    依次类推。mysql 是:limit
    sql server :top
    oracle : rownum
      

  3.   

    SQl:select top 10 * from table where id not (select top (10*(page-1)) id from table)
      

  4.   

    用截取字符串,能做吗。我也没试过。大概思路,我想是把内容提取出来做判断,在写个算法,大于多少字开始截取,让后存入session中, 截取的次数也存入session中 
      
      

  5.   

    顶下3楼大哥! 
      个人始终觉得  物理分页好...
    数据量大的时候 比如1000W条... 
         存入Session   再从Session  里面逻辑分页      速度可想而知
      

  6.   

    http://topic.csdn.net/t/20050715/18/4147548.html
      

  7.   

    是网页上经常出现的"上一页"/"下一页"功能吧?
    我觉得在新闻存入数据库的时候,已经把页都分好了,这样其实会给我们实现翻页功能带来很多方便啊。我觉得这是可行的。
    比如我需要读一个新闻,大概有5页。那我在读数据库时候,
    先获得这个新闻有多少页:select count(*) from 表。 
    然后,按照情况,一次只返回一页内容,select * from 表 where pageId=?.
      

  8.   

    http://andyone.javaeye.com/blog/317022
    楼主上面链接的那篇文章  JS分页 很好  你看看 这个问题我终于解决了 高兴一下
      

  9.   

    呵呵,我估计楼上的都误解楼主的意思了。。楼主是对某条记录中的内容进行分页,不是你们所说的对某个表进行分页。汗
    我觉的可以用内存分页的方法实现。现假定数据库某记录的内容字数为N,每页显示字数为n,设置当前指针p(指向当前第几个字符开始)。可以将这个记录的内容全部读取到内存中,因为即使数据量大,但也是相对的。
    当读取第一页时,p = 0(从第0个字符开始),显示[p, p + n]的字符;第二页时,p = n(从第n个字符开始),同样显示[p, p + n]的字符依此类推。。
      

  10.   

    我是一次性把内容都取出来,然后用div控制显示隐藏,造成分页的假象