Java hibernate如何创建一个Criteria对象?

本示例向您展示如何创建HibernateCriteria类的实例。要创建一个Criteria我们调用Session对象的工厂方法并传递持久性类作为参数。要执行Criteria查询,我们只需调用list()方法。

package org.nhooo.example.hibernate.criteria;

import org.hibernate.SessionFactory;

import org.hibernate.Session;

import org.hibernate.HibernateException;

import org.hibernate.Criteria;

import org.hibernate.cfg.Configuration;

import org.nhooo.example.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()) {

            // 创建一个新的条件来查询曲目的集合。

            // 要创建Criteria的实例,我们调用createCriteria()

            // Session对象的工厂方法。

            Criteria criteria = session.createCriteria(Track.class);

            // 调用list()方法以检索Tracks的集合

            // 从数据库中。

            List<Track> tracks = criteria.list();

            for (Track t : tracks) {

                System.out.println("Title     = " + t.getTitle());

                System.out.println("Artist    = " + t.getArtist().getName());

                System.out.println("Genre     = " + t.getGenre().getName());

                System.out.println("Record    = " + t.getRecord().getTitle());

                System.out.println("Label     = " + t.getRecord().getLabel().getName());

                System.out.println("-----------------------------------");

            }

        }

    }

}

                       

以上是 Java hibernate如何创建一个Criteria对象? 的全部内容, 来源链接: utcz.com/z/340725.html

回到顶部