0

HibernateHQLクエリを使用するクラスがあります。これらをHibernateCriteriaクエリに変更したいと思います。ただし、Hibernate Criteriaは、チュートリアルを使用しても、HQLよりも理解するのがはるかに困難です。誰かがクエリの1つがHibernateCriteria/ Filtersを使用するとどのように見えるかを教えてもらえますか?

Configuration configuration = new Configuration();
        configuration.configure().setProperty("hibernate.show_sql", "false");
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(
                                  configuration.getProperties()).buildServiceRegistry();
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(serviceRegistry);

Session session =sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Query query = session.createQuery("from TABLENAME WHERE IDObject1= :idObjectA" +
              "AND IDObject2= :idObjectB AND IDSettingOption = :idSettingOption");
query.setParameter("idObjectA", idObjectB);
query.setParameter("idObjectB", idObjectB);
query.setParameter("idSettingOption", idSettingOption);

List results = query.list();

前もって感謝します!

4

2 に答える 2

0
Criteria criteria = session.createCriteria( TABLENAME.class );

criteria.add( Restrictions.eq( "IDObject1" , idObjectB) );
criteria.add( Restrictions.eq( "IDObject2" , idObjectB) );
criteria.add( Restrictions.eq( "IDSettingOption" ,idSettingOption) );

List results = criteria.list();

ここでCriteriaAPIについて読むことができ、多くの例があります:http:
//docs.jboss.org/hibernate/orm/3.3/reference/en/html/querycriteria.html

于 2012-10-26T09:14:48.117 に答える
0
List results = session.createCriteria(Entity.class)
    .add(Restrictions.eq("IDObject1", idObjectA))
    .add(Restrictions.eq("IDObject2", idObjectB))
    .add(Restrictions.eq("idSettingOption", idSettingOption))
    .list();
于 2012-10-26T09:15:43.110 に答える