在Hibernate Layer中,数据库列价格使用Double类型映射。但是由于业务逻辑,我必须为价格处理空场。没有价格并且价格为0.0在buiness逻辑中有两个不同的含义。如何处理?
boolean day1 = true;
boolean day2 = true;
boolean day3 = true;
boolean day4 = true;
boolean day5 = true;
boolean day6 = true;
boolean day7 = true;
//double ogPrice = 10.99;
OrderGuideProduct orderGuideProduct = new OrderGuideProduct();
orderGuideProduct.setDay1(day1);
orderGuideProduct.setDay2(day2);
orderGuideProduct.setDay3(day3);
orderGuideProduct.setDay4(day4);
orderGuideProduct.setDay5(day5);
orderGuideProduct.setDay6(day6);
orderGuideProduct.setDay7(day7);
// this is where I need to set the empty value
orderGuideProduct.setOgPrice();
答案 0 :(得分:1)
在这种情况下,我建议使用BigDecimal
而不是double
。前者可以为空(因此可以与0.0区分)并且应该被Hibernate识别。
答案 1 :(得分:0)
使用Double而不是double对我有帮助。