struts2类型转换器问题

struts2中简单的Date类型转换器如下,有几个疑问,还请大虾指教,谢谢publicObjectconvertValue(Mapcontext,Objectvalue... struts2中简单的Date类型转换器如下,有几个疑问,还请大虾指教,谢谢

public Object convertValue(Map context, Object value, Class toType) {

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
try {
if (toType == Date.class) { // 当字符串向Date类型转换时
String[] params = (String[]) value;
return sdf.parseObject(params[0]);
} else if (toType == String.class) { // 当Date转换成字符串时
Date date = (Date) value;
return sdf.format(date);
}
} catch (java.text.ParseException e) {
e.printStackTrace();
}
return null;
// return super.convertValue(context, value, toType);
}

请问一下,
1、类型转换器是什么时候调用的?
2、其中if (toType == Date.class)的情况,应该是页面的字符串传入Action,将字符串转换成Date对象的,那么else if (toType == String.class) 这种情况有什么作用呢,什么时候需要调用else if中的情况?
3、Action中的数据到页面是不需要进行类型转换的,所以不太明白问题2,如果需要调用,那么我的疑问又在问题1中,类型转换器是什么时候调用的?

多谢指教!
展开
 我来答
迎着太阳开放07P
2011-07-24
知道答主
回答量:34
采纳率:0%
帮助的人:25.1万
展开全部
p1:类型转换器有好几种,全局和s2自带,还有自定义类型转换器,主要是在页面向后台对象转换或者后台对象转换成字符串时起作用!
p2:第一种不用说,默认调用!
第二种情况是date标签中这么些<s:date>xxxx</date>的时候会调用!
p3:我觉得吧,这个类型转换很木纳而且不好用,我也在纠结 哈哈,以上是参考,呵呵!最好的建议就是如果页面需要出现如date等类型的格式化属性的类型还是保持date类型可以保证转换不出问题!!希望能帮到你!
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式