首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

解决struts2中Double类型的转换有关问题

2012-07-01 
解决struts2中Double类型的转换问题这个对应到model里面的private Double creditLine?@Column(name cr

解决struts2中Double类型的转换问题

这个对应到model里面的private Double creditLine;

?

@Column(name = "credit_line", precision = 10)
public Double getCreditLine() {
?? return this.creditLine;
}

public void setCreditLine(Double creditLine) {
?? this.creditLine = creditLine;
}

?

其它表单项都是string或者非Double型 ,

?

表示提交后,报错,提示找不到setCreditLine(String xx)方法,我的creditLine明明是Double型,为什么它非要给我换成String型呢,无奈之下,想到了自定义类型转换,于是写了个DoubleConvert如下:

?? if (Double.class == toClass) {
??? String doubleStr = values[0];
??? //System.out.println("获取到的字符串" + doubleStr);
??? Double d = null;
??? if(!doubleStr.equals("")){
???? d = Double.parseDouble(doubleStr);
??? }
??? return d;
?? }
?? return 0;
} ?? //System.out.println("value instanceof Double " + (o instanceof Double));
??????? if(o instanceof Double){
??????????? Double d = (Double)o;
??????????? BigDecimal b = new BigDecimal(d.doubleValue()).setScale(2,BigDecimal.ROUND_HALF_DOWN);
??????????? return b.toString();
??????? }
?? return o.toString();
} java.lang.Double=com.prl.helper.DoubleConvert

?

这是个全局转换器,以后只要遇到double型的字段,都可以通过这个转换器来转换。

重启tomcat,提交表单,运行成功。

?

热点排行