使用分页

时间:2015-08-20 13:19:07

标签: java hibernate caching second-level-cache

我有user表&包含用户帖子的子表Post。用户拥有大量帖子,就像推特帖子一样。

我需要在UI上获取用户帖子,在用户向下滚动页面时加载更多帖子,就像facebook / twitter一样。我正在使用hibernate作为ORM框架& MySql为db。我看着分页找到了实现这个目标的两种主要方式

1. setFirstResult();
   setMaxResults();

2. ScrollableResults

我有两个问题

一个。哪种分页方式更合适&有效实现这一目标?我已经读过ScrollableResults比setFirstResult更有效但是它保持了整个分页过程的连接。

B中。在加载用户的个人资料页面时,会激活ajax调用以每次显示用户的帖子,这就像页面中的某个默认内容一样。那么我是否需要实现二级缓存以避免每次页面加载时db命中?

1 个答案:

答案 0 :(得分:0)

  • 如果数据集很大,那么选择ScrollableResults将是 更好。
  • 如果用户将以低带宽访问您的应用程序 并且大多数情况下仅从第1页到第2页检索第一页或特定页面 然后使用setFirstResult()和setMaxResults()。