如何解决struts2日期类型转换
因此要想保证系统一定要正确第对Date类型进行转换,就要写一个全局的类型转换类,进行Date与String之间的类型转换。
packagecom.great.util;
importjava.text.DateFormat;
importjava.text.SimpleDateFormat;
importjava.util.Date;
importjava.util.Map;
importcom.opensymphony.xwork2.conversion.impl.DefaultTypeConverter;
publicclassDateConverterextendsDefaultTypeConverter{
privatestaticfinalDateFormat[]ACCEPT_DATE_FORMATS={
newSimpleDateFormat("dd/MM/yyyy"),
newSimpleDateFormat("yyyy-MM-dd"),
newSimpleDateFormat("yyyy/MM/dd")};//支持转换的日期格式
@Override
publicObjectconvertValue(Mapcontext,Objectvalue,ClasstoType){
if(toType==Date.class){ //浏览器向服务器提交时,进行StringtoDate的转换
Datedate=null;
StringdateString=null;
String[]params=(String[])value;
dateString=params[0];//获取日期的字符串
for(DateFormatformat:ACCEPT_DATE_FORMATS){
try{
returnformat.parse(dateString);//遍历日期支持格式,进行转换
}catch(Exceptione){
continue;
}
}
returnnull;
}
elseif(toType==String.class){ //服务器向浏览器输出时,进行DatetoString的类型转换
Datedate=(Date)value;
returnnewSimpleDateFormat("yyyy-MM-dd").format(date);//输出的格式是yyyy-MM-dd
}
returnnull;
}
}
在根目录下创建xwork-conversion.properties文件,并在里面添加下面语句,注册类型转换器
java.util.Date=com.great.util.DateConverter
其中的com.great.util.DateConverter是日期转换类包含命名空间的全称。
然后很多人就大功告成了。
而我还没有成功,系统报错
“ERROR(CommonsLogger.java:27)-Conversionregistrationerror”
“java.lang.ClassNotFoundException:com.great.util.DateConverter”
注册类型转换器没有成功?
仔细一检查发现“java.util.Date=com.great.util.DateConverter”的后面多了一个空格!真相大白了。去掉空格,再次运行,成功!
相关文章
- 数据透视表上线!如何在纯前端实现这个强大的数据分析功能?
- EasyCVR播放时间轴不显示日期,该如何解决?
- js根据起始日期加间隔天数计算出结束日期
- 【Android 应用开发】Android - 时间 日期相关组件
- MySQL中字符串比较大小详解(日期字符串比较问题)
- UIDatePicker 日期时间选择器详解手机开发
- 类型MySQL中的日期类型及其应用(mysql日期整数)
- Oracle如何正确使用日期查询条件(oracle日期查询条件)
- MySQL中如何取得日期数据(mysql取date)
- Linux下如何设置系统日期时间(linux日期设置)
- MySQL中如何插入日期数据(mysql日期插入)
- 教你如何使用Oracle日期格式化——附详细图片演示(oracle日期格式图片)
- 如何在SQL Server中计算日期和时间的差异?(sqlserver时间差)
- 如何使用MySQL查询条件为日期等于?(mysql日期等于)
- Oracle数据管理:数字和日期的应用技巧(oracle数字日期)
- MSSQL 将时间格式转换为日期格式(mssql 转日期)
- 月Oracle如何增加日期一个月(oracle日期加一)
- MySQL中如何获取当前日期是一年的第几周(mysql 一年第几周)
- MySQL数据 如何获取上周日期(mysql 上周日期)
- Oracle中如何实现日期减一的操作(oracle中日期减一)
- Oracle如何快速比较两日期的差异(oracle 两日期比较)
- 函数Oracle 使用日期函数两年后的故事(oracle两年后日期)
- 如何查询日期类型的数据?
- 建立自由的会计日期的报表