请教一个 Hibernate 的关联查询

来源:百度知道 编辑:UC知道 时间:2024/05/15 02:12:19
求DetachedCriteria 查询组合
select * from user,card where user.userid=card.userid and card.color='red'

我要查找所有用户,条件是他的证件颜色是红色的这些用户

用DetachedCriteria怎么创建查询语句?

请高手帮忙

下面是实体类,给大家参照
class User{
private String userid;
Set<Card> cards = new HashSet(0);
getter....
setter...
}

class Card{
private String cardId;
private Users user;
setter...getter...
}
楼下发广告的 和答非所问的人,真不厚道

detachedCriteria = DetachedCriteria.forClass(Regist.class, "regist");
detachedCriteria.createCriteria("reports", "report").add(Restrictions.eq("backFlag", "1"));
resultList = criteria.list();
这样查出来有重复记录。把结果集存到set里面就可以去掉重复元素

不懂,可以查查百度网页,我帮不了你

关联查询需要包括所有的表

Criteria crit = session.createCriteria(User.class);
crit.add( Expression.eq( "color", Color.Red) );
crit.setMaxResults(10);
List users= crit.list();

//Detache
DetachedCriteria query = DetachedCriteria.forClass(Cat.class)
.add( Property.forName("color").eq('red') );

Session session = ....;
Transaction txn = session.beginTransaction();
List results = query.getExecutableCriteria(session).setMaxResults(100).list();
txn.commit();
session.close();