Hibernate是JPA规范的一个具体实现。hibernate有JPA没有的特性 ,hibernate 的效率更快,JPA 有更好的移植性,通用性。

JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。Sun引入新的JPA ORM规范出于两个原因:其一,简化现有Java EE和Java SE应用开发工作;其二,Sun希望整合ORM技术,实现天下归一。

JPA由EJB 3.0软件专家组开发,作为JSR-220实现的一部分。但它又不限于EJB 3.0,你可以在Web应用、甚至桌面应用中使用。JPA的宗旨是为POJO提供持久化标准规范,由此可见,经过这几年的实践探索,能够脱离容器独立运行,方便开发和测试的理念已经深入人心了。Hibernate3.2+、TopLink 10.1.3以及OpenJPA都提供了JPA的实现。

在我们的web开发中,常常要跟数据库打交道,对数据表进行增删改查等操作,如果查询的数据较多,往往需要进行分页处理,本文描述了如何使用hibernate进行分页,结合spring mvc框架进行相关介绍。

方法/步骤

1首先我们定义一个类,其将实体对象作为泛型接收参数,里面定义的属性包括总数及行的信息。

2control层接收前台传递的参数(开始、结束、排序字段等信息),然后调用service的方法获得一个page对象。

3service层的方法进行处理的时候,首先将查询的条件参数存放到Criterion的对象中,作为查询条件。

4同时将orders的map对象取出,根据升序降序的不同存放到Order的对象中,处理排序。

5Criterion和Order作为函数的参数,hibernateDao继承了SimpleHibernateDao,其接收这几个参数,按照Criteria分页查询。

6我们前台使用datatables组件进行分页的处理,后台调用相关方法,看下分页后的效果如下。

标签: jpa和hibernate的区别是什么 分页功能 hibernate实现分页功能 如何使用hibernate进行分页