javabean Double类型字段为设置null时 会被转为0.00,我要想得到null怎么办?
javabean代码:privateDoubletestDouble;publicDoublegetTestDouble(){returntestDouble;}publ...
javabean 代码:private Double testDouble;
public Double getTestDouble() {
return testDouble;
}
public void setTestDouble(Double testDouble) {
this.testDouble = testDouble;
}
当setTestDouble(null)时 getTestDouble会为0,我要的是null
高手给指点指点,谢谢了 展开
public Double getTestDouble() {
return testDouble;
}
public void setTestDouble(Double testDouble) {
this.testDouble = testDouble;
}
当setTestDouble(null)时 getTestDouble会为0,我要的是null
高手给指点指点,谢谢了 展开
4个回答
展开全部
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我刚刚测试了下怎么是输出null? 完全复制的你的代码,你已经定义的是Double型的对象类(double型包装类)了,是可以为null的。
追问
我是用java hibernate建数据模型
@aPerformance()
@aComment("xxx率(%)")
@Column(name = "TESTDOUBLE",columnDefinition="NUMBER", nullable = true)
private Double testDouble;
当hibernate映射插入到表里的值就为0了
追答
你把columnDefinition设为默认值试试。你定义的值为NUMBER,而要为null的话肯定要是一个对象类型。基本double类型的话会自动转化为默认0.00;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class DoubleTest {
private Double testDouble;
public Double getTestDouble() {
return testDouble;
}
public void setTestDouble(Double testDouble) {
this.testDouble = testDouble;
}
/**
* @param args
*/
public static void main(String[] args) {
DoubleTest test = new DoubleTest();
test.setTestDouble(null);
System.out.println(test.getTestDouble() == null);
System.out.println(test.getTestDouble());
}
}
输出就是null啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在写个方法,public String getNullValue(){
setTestDouble(null);
Double a = getTestDouble();
if (a == 0.00){
return null;
}
}
setTestDouble(null);
Double a = getTestDouble();
if (a == 0.00){
return null;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询