如何在Hibernate中使用限制来选择记录?

时间:2019-04-02 10:07:35

标签: java hibernate

我尝试使用
输入:100和150
criteria.add(Restrictions.between("price", from, to)));
但结果不在100-150之间。
才150。

我希望它必须检索100、101、102、103、104,......150。
那么如何检索所有记录?

如果两个记录的价格相同,请考虑102,那么我想同时检索它们。

BLManager.java

public List<Newitems> byPrice(Double from, Double to) {
    Session session = sessionFactory.openSession();
    Criteria criteria = session.createCriteria(Newitems.class);
    criteria.add(Restrictions.between("price", BigDecimal.valueOf(from), BigDecimal.valueOf(to)));
    List<Newitems> newitems = criteria.list();
    session.close();
    return newitems;  

客户代码:

 public static void main(String[] args) {
        BLManager manager = new BLManager();

        double from = 100;
        double to = 150;

        List<Newitems> newitems = manager.byPrice(from, to);
        Newitems nitems = newitems.iterator().next();
        System.out.println("Price of: " + nitems.getName() + " is " + nitems.getPrice());
    }

0 个答案:

没有答案