This example show you how to create an instance of Hibernate Criteria
class. To create a Criteria
we call the factory method of the Session
object and pass the persistence class as parameter. To execute the Criteria
query we simply call the list()
method.
package org.kodejava.hibernate;
import org.hibernate.SessionFactory;
import org.hibernate.Session;
import org.hibernate.HibernateException;
import org.hibernate.Criteria;
import org.hibernate.cfg.Configuration;
import org.kodejava.hibernate.model.Track;
import java.util.List;
public class CreateCriteriaDemo {
public static Session getSession() throws HibernateException {
String cfg = "hibernate.cfg.xml";
SessionFactory sessionFactory = new Configuration().configure(cfg)
.buildSessionFactory();
return sessionFactory.openSession();
}
@SuppressWarnings("unchecked")
public static void main(String[] args) {
try (Session session = getSession()) {
// Create a new Criteria to query for a collection of Tracks.
// To create an instance of Criteria we call a createCriteria()
// factory method of the Session object.
Criteria criteria = session.createCriteria(Track.class);
// Call the list() method to retrieve a collections of Tracks
// from the database.
List<Track> tracks = criteria.list();
for (Track track : tracks) {
System.out.println("Title = " + track.getTitle());
System.out.println("Artist = " + track.getArtist().getName());
System.out.println("Genre = " + track.getGenre().getName());
System.out.println("Record = " + track.getRecord().getTitle());
System.out.println("Label = " + track.getRecord().getLabel().getName());
System.out.println("-----------------------------------");
}
}
}
}
Maven Dependencies
<dependencies>
<!-- https://search.maven.org/remotecontent?filepath=org/hibernate/hibernate-core/5.6.9.Final/hibernate-core-5.6.9.Final.jar -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.6.9.Final</version>
</dependency>
<!-- https://search.maven.org/remotecontent?filepath=mysql/mysql-connector-java/8.0.30/mysql-connector-java-8.0.30.jar -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
</dependencies>
Latest posts by Wayan (see all)
- How do I build simple search page using ZK and Spring Boot? - March 8, 2023
- How do I calculate days between two dates excluding weekends and holidays? - January 12, 2023
- How do I discover the quarter of a given date? - January 11, 2023