基础之基础-mysql后台分页(O/R映射采用hibernate)
2012-10-15 11:35
561 查看
此方法是通过后台分页的,不是通过sql语句分页的,不废话了 直接上代码
后台分页的方法:
hql为select语句,不带分页信息;
page为要显示的当前页;
主要看while循环里面的代码即可,span为一页显示记录的个数,如果想知道sf是什么,就继续往下看吧,否则看到这就OK了
sf为SessionFactory的实例
还有半个小时到吃饭时间,再来个查totalPage的方法吧
hql一般为select count(*) from table where ...
写完收工,饭饭去喽~~~~
后台分页的方法:
public List<?> getPageContent(String hql, int page, int span) { List temp = new ArrayList(); Session sess = sf.openSession(); Query q = sess.createQuery(hql); List list = q.list(); int i = 0; while ((page - 1) * span + i < list.size() && i < span) { //分页代码 temp.add(list.get((page - 1) * span + i)); i++; } sess.close(); return temp; }
hql为select语句,不带分页信息;
page为要显示的当前页;
主要看while循环里面的代码即可,span为一页显示记录的个数,如果想知道sf是什么,就继续往下看吧,否则看到这就OK了
sf为SessionFactory的实例
还有半个小时到吃饭时间,再来个查totalPage的方法吧
public int getTotalPage(String hql int span) { Session sess = sf.openSession(); Query q = sess.createQuery(hql); List<Long> list = q.list(); int count = (list.get(0)).intValue(); int page = (count % span == 0) ? (count / span) : (count / span + 1); sess.close(); return page; }
hql一般为select count(*) from table where ...
写完收工,饭饭去喽~~~~
相关文章推荐
- Hibernate——映射基础
- hibernate 采用映射文件配置
- Mybatis+mysql动态分页查询数据案例——配置映射文件(HouseDaoMapper.xml)
- mysql中的text,mediumtext,longtext在Hibernate中的类型映射
- Hibernate基础映射
- Hibernate的分页(基于数据库中分页)MySQL
- Oracle,mysql分页查询,Hibernate,iBatis的分页查询
- hibernate mysql 倒序排列 并分页(取前n条记录)
- (转)Hibernate框架基础——映射主键属性
- hibernate与mysql之间的字段映射关系
- 【Hibernate框架开发之二】第一个Hibernate-Annonation项目(采用@Entity、@Id直接映射实体类)
- Hibernate之 对象/关系数据库映射基础(Basic O/R Mapping)
- 【SSH三大框架】Hibernate基础第十一篇:对继承映射的操作
- spring+hibernate+mysql 分页
- Hibernate基础--->HQL查询的分页功能
- MySQL中日期映射Hibernate问题简结
- hibernate与mysql映射类型对应表与mysql导入导出
- Spring+Mybatis+SpringMVC+Maven+MySql搭建实例 后台分页
- 【SSH 基础】浅谈Hibernate关系映射(4)
- Hibernate基础 ( 3 ) 组件属性映射