我是hibernate criteria的新手。如果我在下面的代码中错了,请纠正我。
Criteria c = getSessionFactory().getCurrentSession().createCriteria(JdwCustomerTlrdRef.class);
c.add(Restrictions.ilike("operations_spec", "%AAL%"));
List<JdwCustomerTlrdRef> customerTlrdRefSysId = c.list();
我对operations_spec应用了限制,它将返回所有AAL客户名称。
答案 0 :(得分:0)
试试这个。
Criteria c = getSessionFactory().getCurrentSession().createCriteria(JdwCustomerTlrdRef.class);
如果你想找到确切的“AAL”,那么
c.add(Restrictions.eq("operations_spec", "AAL" ));
或者,如果您希望所有在operations_spec
字段中具有AAL的客户,即“abAALcd”,那么。
c.add(Restrictions.like("operations_spec", "AAL" , MatchMode.ANYWHERE));
还有一件事,你使用字段名称作为“operations_spec”,它看起来像db中的字段名称。如果你想在条件中使用那么你应该使用我认为operationSpecs
的属性名称,如果你正在遵循java成员名称编码实践。
如果是这种情况,则应用这样的限制。
c.add(Restrictions.eq("operationSpecs", "AAL" ));