类型转换struts2?

时间:2014-01-03 04:01:09

标签: java javascript jsp java-ee struts2

我有 struts.xml

<s:textfield id="thresholdParameter_1"
    name="gmathreshold.distinctBnumberRatio">
</s:textfield></td>

其中gmathreshold是一个distinctBnumberRatio作为成员变量的bean。在我的bean中它是BigDecimal。那么如何在我的Bean中设置它。我的意思是如何在 struts2 中将String转换为BigDecimal

1 个答案:

答案 0 :(得分:1)

  

如何将String转换为BigDecimal

BigDecimal(java.lang.String)构造函数采用String参数。

  

BigDecimal的字符串表示形式转换为BigDecimal。字符串表示由可选符号'+'('\ u002B')或' - '('\ u002D')组成,后跟一个零或多个十进制数字(“整数”)的序列,可选地后跟一个分数,可选地后跟一个指数。

例如,

String distinctBnumberRatioStr = "124.20";
BigDecimal distinctBnumberRatio = new BigDecimal(str);  

更新

回答你comment

  

JSP中的字符串到ActionClass中的BigDecimal

From docs TypeConversion-BuiltinTypeConversionSupport

类型转换由XWork实现。

XWork会自动为您处理最常见的类型转换。这包括对以下各项中的字符串进行转换的支持:

  • 字符串
  • boolean / Boolean
  • char / Character
  • int / Integer,float / Float,long / Long,double / Double
  • 日期 - 使用与当前请求关联的区域设置的SHORT格式
  • 数组 - 假设各个字符串可以转换为单个项目
  • 集合 - 如果不能确定对象类型,则假定它是一个String并且创建一个新的ArrayList
  • 枚举
  • BigDecimal和BigInteger

请注意,对于数组,类型转换将遵循数组元素的类型,并尝试单独转换每个项目。与任何其他类型转换一样,如果无法执行转换,则使用标准类型转换错误报告来指示处理类型转换时出现的问题。