Struts2自定义类型转换

2014-11-24 00:34:42 · 作者: · 浏览: 0

原理

struts2的自定义类型转换机制为复杂类型的输入输出处理提供了便捷.struts2已经为我们提供了几乎所有的primitive类型以及常用类型(Date)的类型转换器,我们也可以为我们自定义类添加自定义类型转化器.

struts2为我们提供了一个类型转化器的入口: ognl.DefaultTypeConverter,或继承org.apache.struts2.util.StrutsTypeConverter,由于StrutsTypeConverter提供了更好的封装,所以建议大家在写转换器时通常采用继承StrutsTypeConverter方式来实现.

StrutsTypeConverter类实质上是DefaultTypeConverter的扩展

publicabstractclass StrutsTypeConverter extends DefaultTypeConverter

{

}

StrutsTypeConverter中的两个核心方法

publicabstract Object convertFromString(Map context, String[] values, Class toClass);

publicabstract String convertToString(Map context, Object o);

convertFromString方法用于从前台页面获取字符串,将字符串转化为对象

convertToString方法用于将对象以字符串的方式输出到页面

我们在写struts2自定义类型转换类的时候主要就是覆盖上面两个方法

分类

struts2自定义类型转换从大的方面来讲分两种:

u 局部类型转换

u 全局类型转换

局部类型转换又分为三种:

普通实体bean的自定义类型转换

基于领域模型的自定义