O'Reilly logo

Hibernate: A Developer's Notebook by James Elliott

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

3.2. Finding Persistent Objects

It's time to throw the giant lever into reverse and look at how you load data from a database into Java objects.

Use Hibernate Query Language to get an object-oriented view of the contents of your mapped database tables. These might have started out as objects persisted in a previous session, or they might be data that came from completely outside your application code.

3.1.1. How do I do that?

Example 3-5 shows a program that runs a simple query using the test data we just created. The overall structure will look very familiar, because all the Hibernate setup is the same as the previous program.

Example 3-5. QueryTest.java
 1   package com.oreilly.hh;
 2
 3   import net.sf.hibernate.*;
 4   import net.sf.hibernate.cfg.Configuration;
 5
 6   import java.sql.Time;
 7   import java.util.*;
 8
 9   /**
10    * Retrieve data as objects
11    */
12   public class QueryTest {
13
14       /**
15        * Retrieve any tracks that fit in the specified amount of time.
16        *
17        * @param length the maximum playing time for tracks to be returned.
18        * @param session the Hibernate session that can retrieve data. 19 * @return a list of {@link Track}s meeting the length restriction. 20 * @throws HibernateException if there is a problem. 21 */ 22 public static List tracksNoLongerThan(Time length, Session session) 23 throws HibernateException 24 { 25 return session.find("from com.oreilly.hh.Track as track " + 26 "where track.playTime <= ?", 27 length, Hibernate.TIME); 28 } 29 30 /** 31 * Look up and print some ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required