首页  >  问答  >  正文

java - 请教一个更加优雅的实现业务中的分页加载的问题?

在负责学校下学期图书馆的项目的一部分,现在碰到了一个业务设计的困难。

比如说在首页的话,我计划当学生查询相关的信息的时候全部采用ajax加载,不是很习惯很多网站比如知乎那种拖动到底部自动加载。我的想法是在底部设置一个分页的选项,每一页显示15条记录,文章全部采用ajax加载。

这样sql语句大概就是select xxx from xxx condition limit 15 offset xxx。但是现在由于要做分页,我必须要知道一个学生总共有多少条记录在数据库中,前端才好设计,总记录可以通过sql语句select count(*) from xxx condition查询出来,然后将总记录保存在前端中。

如果这样的话,必须要为拆分成两条sql语句查询,感觉不是很优雅,请问有什么更加优雅的实现方案么?

ps: 因为在系统中有很多相似的业务都是要采用类似的分页设计,每次都这样使用两条sql语句分开查询太不优雅了。

补充

答主好像都没看请题目。一位是答的就是sql语句1,另外一位说的是前端。

多谢各位网友的回答,问题已解决,看来只能采用两条sql语句了 ^_^

阿神阿神2691 天前621

全部回复(6)我来回复

  • 大家讲道理

    大家讲道理2017-06-06 09:53:51

    雷雷 雷雷 雷雷

    回复
    0
  • 仅有的幸福

    仅有的幸福2017-06-06 09:53:51

    不用想了,必须是两条的.
    要一条也行:
    select * from table
    union
    select 0, 0...., count(*) from table

    回复
    0
  • 怪我咯

    怪我咯2017-06-06 09:53:51

    这很正常。如果想用一条sql解决,就把所有对象从数据库里查出来再做一系列操作,但搞不好你的内存就爆掉了。

    回复
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-06 09:53:51

    不用想了 必须是两条 。分页的实现 定义一个泛型类page<T> 里面放什么 需要我说的更详细吗?

    回复
    0
  • 習慣沉默

    習慣沉默2017-06-06 09:53:51

    试试PageHelper,就一条sql语句,甚至不需要limit

    回复
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-06 09:53:51

    要优雅的分页 分页的插件很多的

    回复
    0
  • 取消回复