gpt4 book ai didi

java - 使用 Hibernate 排除值

转载 作者:行者123 更新时间:2023-12-02 03:33:30 25 4
gpt4 key购买 nike

我正在尝试从结果的一列中排除一个值。

我尝试过使用conjunction()and()运营商但无法达到我想要的。

这是我最后一次尝试过滤:

public List<Factura> getAll() {
Criteria criteria = getSession().createCriteria(Factura.class);
Criterion criterion = Restrictions.conjunction().add(Restrictions.eq("estado", "INICIADO"))
.add(Restrictions.eq("estado", "CONFIRMADO"));
criteria.addOrder(Order.desc("idFactura"));
criteria.add(criterion);
List<Factura> list = criteria.list();
return list;
}

在我的表格中的 estado 列中我有3个可能的值。 INICIADO, CONFIRMADO, RESERVADO我想从结果中排除 RESERVADO但我不知道我做错了什么,只获取完整列表而不进行过滤。

最佳答案

好吧,我在尝试了很多方法后找到了解决方案,而且很容易理解。

public List<Factura> getAll() {
Criteria criteria = getSession().createCriteria(Factura.class);
criteria.add(
Restrictions.not(
Restrictions.in("estado", new String[]{"RESERVADO"})));
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
List<Factura> list = criteria.list();
return list;
}

这样我就可以排除我想要的任何值。

感谢大家的阅读,很抱歉浪费了您的时间。

关于java - 使用 Hibernate 排除值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37738757/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com