Hibernate Criteria
In this tutorial we are going to discuss Hibernate Criteria with example.
Hibernate Criteria :
Hibernate provide a highly object oriented concept of Criteria to handle
database. For using Criteria import interface org.hibernate.Criteria.
Criteria query interact with your persistent class. createCriteria() method is
used for creating criteria which is provided by Hibernate Session Interface.
Criteria criteria = session.createCriteria(Student.class);
Here Student is our persistent bean class where our database table is mapped. session is object of Hibernate Session interface.
Example: Here is your main class code-
package net.roseindia.main; import net.roseindia.table.Student; import net.roseindia.util.ConnectionUtil; import java.util.*; import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.SessionFactory; public class Application { public static void main(String[] args) { SessionFactory sessionFactory = ConnectionUtil.getSessionFactory(); Session session = sessionFactory.openSession(); Criteria criteria = session.createCriteria(Student.class); criteria.setResultTransformer(criteria.DISTINCT_ROOT_ENTITY); List<Student> studentList = new ArrayList<Student>(); studentList = criteria.list(); Iterator it = studentList.iterator(); System.out.println("Roll No.\tName\tCourse\tAddress"); while (it.hasNext()) { Student student = (Student) it.next(); System.out.print(student.getRoll()); System.out.print("\t\t"+student.getName()); System.out.print("\t"+student.getCourse()); System.out.print("\t"+student.getAddress()); System.out.println(); } session.close(); } }
Output:
Hibernate: select this_.roll_no as roll1_0_0_, this_.address as address0_0_, this_.course as course0_0_, this_.student_name as student4_0_0_ from student this_ Roll No. Name Course Address 1 Rohan B.Tech Patna 2 Mandy B.Tech London 3 Samsung MCA new delhi 4 Vinay MCA Patna