假设我有类似的课程:
class A {
B getB();
C getC();
}
class B {
String getFoo();
}
class C {
int getBar();
}
我想在A上过滤标准,在不同的子类属性上过滤两个过滤器,例如:
Criteria criteriaA = session.createCriteria(A.class);
Criteria criteriaB = criteriaA.createCriteria("b").add(Restrictions.eq("foo", "Something"));
Criteria criteriaC = criteriaA.createCriteria("c").add(Restrictions.eq("bar", 0));
我想要做的是使用“或”子句将criteriaB和criteriaC组合在一起,例如:
//this does not work
criteriaA.add(Restrictions.disjunction().add(criteriaB).add(criteriaC));
我该怎么做?我在这里对API稍作绊脚石。
使用别名代替嵌套条件:
Criteria criteria = session.createCriteria(A.class)
.createAlias("b", "b_alias")
.createAlias("c", "c_alias")
.add(Restrictions.disjunction()
.add(Restrictions.eq("b_alias.foo", "Something"))
.add(Restrictions.eq("c_alias.bar", "0"))
);
问题内容: 我有一堂课; 我还有一节课; 我将如何搜索Student ,名字John,lastName Doe? 如果是出生日期属性,我将在日期上创建一个并添加一个相等限制()。我将如何对AppUser对象中的lastName和firstName进行操作? 问题答案: 查询: 要使用条件,请检查此线程 还可以从hibernate文档中查看此页面
问题内容: 有一个“ Item”类,它有一些相关的类,称为Vehicle,Vmodel,Category,ItemName,Brand,SizeModel。每个类都有属性ID和名称(例如Vehicle类,“ vid”和“ vname”)。 Item类具有itemcode。 另外,我还需要从给定的示例Item对象(称为“ ”)中获取Item对象,该对象等于我的示例item对象的属性以及与该对象关联的
问题内容: 嗨,我想使用条件编写查询:必须使用条件创建以下查询: “从S2中选择不同的(s2Taxper),其中s2Tc =‘601’并且s2Txcd!=” 提前致谢 问题答案:
问题内容: 我想执行类似的查询 如果我使用neProperty()函数,它将返回记录为 如何使用hibernate条件实施? 谢谢 问题答案: 创建一个全选条件: 然后,您可以对其添加限制,即第1列= 8等,如下所示: 最后,您可以提供not in子句,如下所示:
问题内容: 这是对该问题的更多甚至更好的描述: 我做一个简单的选择查询。返回列表包含确切的记录/对象数,就好像我在数据库中进行相同的查询一样,但是问题在于所有对象都是相同/相同的。 例如,这是数据库中的结果(我删除了空值): 26801 01-JAN-00 7 31-DEC-99 7 Obere Kirchstr。26 CH 8304 Walliselln 26801 01-JAN-00 2 31
问题内容: 在甲骨文我有格式的日期 2011年4月17日19:20:23.707000000 我想检索2011年4月17日的所有订单。 但这给我带来了空洞的结果: 问题答案: 为什么使用)? 您应该使用。 请注意,您也可以使用,,,在日期对象作为比较操作。运算符不适用于这种情况,因为当您要根据列的部分内容匹配结果时很有用。请参阅http://www.sql- tutorial.net/SQL-LI