Book Image

Java Hibernate Cookbook

By : Yogesh Prajapati, Vishal Ranapariya
Book Image

Java Hibernate Cookbook

By: Yogesh Prajapati, Vishal Ranapariya

Overview of this book

This book will provide a useful hands-on guide to Hibernate to accomplish the development of a real-time Hibernate application. We will start with the basics of Hibernate, which include setting up Hibernate – the pre-requisites and multiple ways of configuring Hibernate using Java. We will then dive deep into the fundamentals of Hibernate such as SessionFactory, session, criteria, working with objects and criteria. This will help a developer have a better understanding of how Hibernate works and what needs to be done to run a Hibernate application. Moving on, we will learn how to work with annotations, associations and collections. In the final chapters, we will see explore querying, advanced Hibernate concepts and integration with other frameworks.
Table of Contents (15 chapters)
Java Hibernate Cookbook
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Pagination using a criteria


Now we will look at how to limit the number of rows using hibernate.

How to do it...

Here's a scenario to easily understand what we are about to do.

Let's consider that we have four rows in an employee table, and a SELECT * FROM employee SQL query returns all four records. However, if we want only the second and third records, we can use the SELECT * FROM employee LIMIT 1, 2 SQL statement.

Let's take a look at how to achieve such a condition in hibernate:

Code

Enter the following code to paginate using a criteria:

SessionFactory sessionFactory = HibernateUtil.getSessionFactory();
Session session = sessionFactory.openSession();

Criteria criteria = session.createCriteria(Employee.class);
criteria.setFirstResult(1); // represent LIMIT 1,* in MySQL
criteria.setMaxResults(2);// represent LIMIT *,2 in MySQL

List<Employee> employees = criteria.list();
for (Employee employee : employees) {
  System.out.println(employee.toString());
}

session.close();
HibernateUtil.shutdown...