比较休眠条件中的浮点值

Comparing Float value in hibernate criteria

我的数据库中有一个名为 "Percentage" 的列,它是一个浮点数,我试图获取百分比为 0 的所有行。但我收到以下错误。

public List<DataFromDB> getDatafromDB(){
Criteria cr = sessionFactory.getCurrentSession().createCriteria(DataFromDB.class);
cr.add(Restriction.eq("Percentage",0));
return cr.list();
}

错误:
java.lang.ClassCastException: java.lang.Integer 无法转换为 java.lang.Float

你应该使用 0f 来表示浮动。 0是一个整数。

public List<DataFromDB> getDatafromDB(){
    Criteria cr = sessionFactory.getCurrentSession().createCriteria(DataFromDB.class);
    cr.add(Restriction.eq("Percentage",0f));
    return cr.list();
}

使用cr.add(Restriction.eq("Percentage",0F));