【发布时间】:2014-07-06 09:33:18
【问题描述】:
我试过这样做:
session = HibernateUtil.getSessionFactory().openSession();
Criteria cr = session.createCriteria(Car.class);
cr.createAlias("vendor", "vendor");
cr.add( Restrictions.eq("vendor.name", input));
results = (List<Car>) cr.list();
还喜欢:
session = HibernateUtil.getSessionFactory().openSession();
Criteria cr = session.createCriteria(Car.class);
cr.createCriteria("vendor").add(Restrictions.eq("name", input));
results = (List<Car>) cr.list();
两种实现都只返回所有数据,而不是在搜索查询中指定。
在汽车课上我有关系:
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="id_vendor", nullable=false)
public Vendor getVendor() {
return this.vendor;
}
而且我在Vendor 类中也有name 列,我正在尝试搜索。
那么我怎么可能做这样的搜索请求呢?
谢谢。
【问题讨论】:
标签: java hibernate one-to-many criteria hibernate-criteria