我可以使用可调用语句
将值设置为doublethis.setValue(new Double(cstmt.getDouble(4)));
但是当我尝试像这样写回来时
cstmt.setDouble(4, this.getValue());
我收到错误..
compile:
[exec] com\jack\common\javabean\ExampleBean.java:262: cannot resolve symbol
[exec] symbol : method setDouble (int,java.lang.Double)
[exec] location: interface java.sql.CallableStatement
[exec] cstmt.setDouble(7,this.getValue());
[exec] ^
任何建议可以用这个
做什么答案 0 :(得分:4)
假设this.getValue()
返回Double
,您似乎需要使用this.getValue().doubleValue()
来匹配方法签名。它需要double
原语,而不是Double
对象。
我猜您使用的是Java 1.4或更早版本。在1.5中,这个错误应该被自动装箱隐藏。
答案 1 :(得分:0)
显然,cstmt是一个实例的类,没有(可见)成员函数,名为setDouble(int,java.lang.Double)。 它是否应该是setDouble(int,double)并且您传递的是java.lang.Double的实例,并且例程需要一个double类型的原语?