Struts2的类型转换(0):Struts2的类型转换入门

来源:互联网 发布:sis永久域名 编辑:程序博客网 时间:2024/04/27 17:16

所有的MVC框架,都需要负责解析HTTP请求参数,并将请求参数传给控制器组件。此时问题出现了:HTTP请求参数都是字符串类型,而Java是强类型语言,因此MVC框架必须将这些字符串参数转换成相应的数据类型------这个工作是所有的MVC框架都应该提供的功能。

Struts2提供了非常强大的类型转换机制,① Struts2的类型转换可以基于ognl表达式,只要我们把HTTP请求参数命名为合法的ognl表达式,就可以充分利用Struts2的类型转换机制。

除此之外,Struts2提供了很好的扩展性,② 开发者可以非常简单地开发出自己的类型转换器,完成字符串和自定义复合类型之间的转换,例如完成字符串到Person类型的转换,如果类型转换中出现未知异常,类型转换器开发者无需关心异常处理逻辑,Struts2的conversionError拦截器会自动处理该异常,并且在页面上生成提示信息。总之,Struts2的类型转换器提供了非常强大的表现层数据处理机制,开发者可以利用Struts2的类型转换机制来完成任意的类型转换。

对于大部分的常用类型,开发者无须理会类型转换,因为Struts2可以完成大多数常用的类型转换。这些常用的类型转换是通过Struts2内建的类型转换器完成的,Struts2已经内建了字符串类型和如下类型之间相互转换的转换器。

类型说明boolean和Boolean完成字符串和布尔值之间的转换char和Character完成字符串和字符之间的转换int和Integer完成字符串和整型值之间的转换long和Long完成字符串和长整型值之间的转换float和Float完成字符串和单精度浮点值之间的转换double和Double完成字符串和双精度浮点值之间的转换Date完成字符串和日期类型之间的转换,日期格式采用用户请求所在的Locale的SHORT格式数组默认情况下,数组元素是字符串,如果用户提供了自定义的类型转换器,也可以是其他复合类型的数组集合默认情况下,假定集合元素类型为String,并创建了一个新的ArrayList封装所有的字符串

原创粉丝点击