如何使用hibernate标准连接表 [英] How to join tables using hibernate criteria

查看:109
本文介绍了如何使用hibernate标准连接表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图加入多个表来加入使用条件,但得到错误,这样做可以有人请帮助我
我的代码是

  final Session session = getSession(); 
final Criteria criteria = session.createCriteria(ReferralPaymentInfo.class).createCriteria(SIGNUP_REFERRAL);
System.out.println(before);
List list = criteria.list();
System.out.println(after);

我也试过这段代码
final Session session = getSession();
final Criteria criteria = session.createCriteria(ReferralPaymentInfo.class);
criteria.setFetchMode(SIGNUP_REFERRAL,FetchMode.JOIN);
List list = criteria.list();

这只会从表ReferralPaymentInfo给出结果,而不会考虑表SIGNUP_REFERRAL
有人可以帮我out
T

解决方案

试试这个

  DetachedCriteria ownerCriteria = DetachedCriteria.forClass(Owner.class); 
ownerCriteria.setProjection(Property.forName(id));
ownerCriteria.add(Restrictions.eq(ownername,name));

Criteria criteria = getSession()。createCriteria(Pet.class);
criteria.add(Property.forName(ownerId)。in(ownerCriteria));


I am trying to join multiple table to join using criteria but getting error in doing so can someone please help me in it My code is

final Session session = getSession();
final Criteria criteria = session.createCriteria(ReferralPaymentInfo.class).createCriteria("SIGNUP_REFERRAL");
System.out.println("before");
List list = criteria.list();
System.out.println("after");

I also tried this code final Session session = getSession(); final Criteria criteria =session.createCriteria(ReferralPaymentInfo.class); criteria.setFetchMode("SIGNUP_REFERRAL", FetchMode.JOIN); List list = criteria.list();

This gives result only from table ReferralPaymentInfo and not considering table SIGNUP_REFERRAL Can some one please help me out T

解决方案

try this

DetachedCriteria ownerCriteria = DetachedCriteria.forClass(Owner.class);
    ownerCriteria.setProjection(Property.forName("id"));
    ownerCriteria.add(Restrictions.eq("ownername", "name"));

    Criteria criteria = getSession().createCriteria(Pet.class);
    criteria.add(Property.forName("ownerId").in(ownerCriteria));

这篇关于如何使用hibernate标准连接表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆