Share on Google+Share on Google+

JPA setMaxResults Example

In this section, you will learn how to use the setMaxResults() method in your JPA application.

JPA setMaxResults Example


In this section, you will learn how to use the setMaxResults() method in your JPA application. The setMaxResults function is used to set a limit to restrict the number of objects returned from database.

setMaxResults(int maxResult): This method is used with query instance for setting the maximum number of results to be fetched from database. 

To test the setMaxResults with example follow the following steps:

  1. Database Table: student, create student table.
  2. Model Class:, develop the model class.
  3. Main Class:, develop the program to run the application.

Database Table: student

CREATE TABLE `student` ( 
`id` int(11) NOT NULL auto_increment, 
`sname` varchar(100) NOT NULL, 
`sroll` int(11) NOT NULL, 
`scourse` varchar(10) NOT NULL, 

Then enter few records in student table.

Model Class:

Here is the code of the model class, which is mapped to student table in the database.


package roseindia;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

* @author Administrator

public class Student {

private int id;

* @return the id
public int getId() {
return id;

* @param id the id to set
public void setId(int id) { = id;

@Column(name="sname", length=100,nullable=false)
private String sname;

* @return the sname
public String getSname() {
return sname;

* @param sname the sname to set
public void setSname(String sname) {
this.sname = sname;

private int sroll;

* @return the sroll
public int getSroll() {
return sroll;

* @param sroll the sroll to set
public void setSroll(int sroll) {
this.sroll = sroll;

private String scourse;

* @return the scourse
public String getScourse() {
return scourse;

* @param scourse the scourse to set
public void setScourse(String scourse) {
this.scourse = scourse;


Main Class:


package roseindia;

import java.util.Iterator;
import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
import javax.persistence.Query;

* @author Administrator
public class JPASetMaxResult {

* @param args
public static void main(String[] args) {
// TODO Auto-generated method stub

EntityManagerFactory emf=Persistence.createEntityManagerFactory("jpa");
EntityManager em=emf.createEntityManager();
EntityTransaction entr=em.getTransaction();
Query query=em.createQuery("SELECT st FROM Student st WHERE st.sroll > ?1");
query.setParameter(1, 100);
List stuList=query.getResultList();
Iterator stuIterator=stuList.iterator();
Student st=(Student);
System.out.print(" sroll:"+st.getSname());
System.out.print(" scourse:"+st.getSname());


You can run the example from eclipse ide.


log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).

log4j:WARN Please initialize the log4j system properly.

Hibernate: select as id0_, student0_.scourse as scourse0_, student0_.sname as sname0_, student0_.sroll as sroll0_ from student student0_ where student0_.sroll>? limit ?

sname:Vinod sroll:Vinod scourse:Vinod

sname:Ravi sroll:Ravi scourse:Ravi

sname:Suman sroll:Suman scourse:Suman


Posted on: June 17, 2009 If you enjoyed this post then why not add us on Google+? Add us to your Circles

Share this Tutorial Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Discuss: JPA setMaxResults Example  

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image