struts2自定义全局和局部类型转换器

一、自定义类型转换器
1.局部类型转换器
声明一个类继承DefaultTypeConverter
重写converValue方法
例:
public class Dateconverter extends DefaultTypeconverter{
@Override
public object convertValue(Map context,Object value,Class toType){
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyyMMdd");
try{
if(toType==Date.class){//当字符串向Date类型转换时
String[]params=(String[])value;//Request.getParameterValues()
return dateFormat.parse(params[0]);
}else if(toType==String.class){//当Date转换成字符串时
Date date=(Date)value;
return dateFormat.format(date);
}
}catch(ParseException e){}
return null;
}
}
在Action类所在的包下放置(“action的类名”-conversion.properties)文件,后面
的-conversion.properties是固定的写法。
在properties文件中的内容为:(要转换的Action)属性名称=定义的类型转换器类(带包名)

time=什么包下的.DateConverter




2.全局类型转换器
基本和局部差不多就是把属性文件放在src跟目录下
属性文件名必须改成xwork-conversion.properties
在properties文件中的内容为:待转换的类型=定义的类型转换器类(带包名)

java.util.Date=什么包下的.DateConverter

你可能感兴趣的:(struts2自定义全局和局部类型转换器)