Eil*_*osa 4 java hibernate criteria criteria-api
很奇怪我找不到一些简单的东西,我有2个实体,一个在另一个内,我的问题是如何从子实体访问一个属性?
实体1
@Getter
@Setter
@Entity
public class ObjectA{
String name;
String surname;
ObjectB B;
}
Run Code Online (Sandbox Code Playgroud)
实体2
@Setter
@Getter
@Entity
ObjectB{
String family;
String range;
}
Run Code Online (Sandbox Code Playgroud)
我想要的是通过标准搜索访问familly和range,所以我做了这个:
public List<ObjectA> search(String name, String surname, String family, String range) {
Criteria c = HibernateUtil.getSessionFactory().getCurrentSession().createCriteria(ObjectA.class, "a");
if (!name.equals("")) {
c.add(Restrictions.eq("a.name", name));
}
if (!surname.equals("")) {
c.add(Restrictions.eq("a.surname", surname));
}
if (!family.equals("")) {
c.add(Restrictions.eq("a.B.family", family));
}
if (!range.equals("")) {
c.add(Restrictions.eq("a.B.range", range));
}
return c.list();
Run Code Online (Sandbox Code Playgroud)
}
可以访问姓名和姓氏,但家庭和范围不能.'无法解决财产问题'我该怎么办?
谢谢= D.
您必须为子类属性创建别名才能访问它.
请查看以下手册的第15.4节http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/querycriteria.html
| 归档时间: |
|
| 查看次数: |
4103 次 |
| 最近记录: |