spring3.0M3 关于Date类型自定义编辑器的问题

问题描述

<beanid="CustomEditorConfigurer"class="org.springframework.beans.factory.config.CustomEditorConfigurer"><propertyname="customEditors"><map><entrykey="java.util.Date"><beanclass="com.dzc.DatePropertyEditor"></bean></entry></map></property></bean>packetcom.dzcimportjava.beans.PropertyEditorSupport;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Date;publicclassDatePropertyEditorextendsPropertyEditorSupport{@OverridepublicvoidsetAsText(Stringtext)throwsIllegalArgumentException{SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd");try{Dated=sdf.parse(text);this.setValue(d);}catch(ParseExceptione){e.printStackTrace();}}}报错原因:org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'CustomEditorConfigurer'definedinclasspathresource[applicationContext.xml]:Initializationofbeanfailed;nestedexceptionisorg.springframework.beans.TypeMismatchException:Failedtoconvertpropertyvalueoftype[java.util.LinkedHashMap]torequiredtype[java.util.Map]forproperty'customEditors';nestedexceptionisjava.lang.IllegalArgumentException:Cannotconvertvalueoftype[DatePropertyEditor]torequiredtype[java.lang.String]forproperty'customEditors[java.util.Date]':nomatchingeditorsorconversionstrategyfound我看了CustomEditorConfigurer类的源码,发现customEditors属性的类型是Map<String,String>,是不是因为取出的Date类型的值无法放入Map的Value内导致的错误,而在spring2.0中运行时正常的,对比了CustomEditorConfigurer源码发现customEditors的Map类型没定义泛型。如果真是这样,那在Spring3.0中怎么写个Date类型的自定义属性编辑器啊,望各位大虾帮帮小弟,偶才刚刚开始学习spring,很多不懂,谢谢大家了。

解决方案

解决方案二:
顶一个,我最近也遇到这个问题

时间: 2024-09-17 04:54:44

spring3.0M3 关于Date类型自定义编辑器的问题的相关文章

bean-spring4.0.6 注入Date类型时,属性编辑器无效

问题描述 spring4.0.6 注入Date类型时,属性编辑器无效 这是MyDate类 package org.xjs.pojo; import java.util.Date; public class MyDate { private Date date; public Date getDate() { return this.date; } public void setDate(Date date) { this.date = date; } } 这是自定义属性编辑器类 package

【转】Struts2中转换Date类型的问题

好久没有写Blog了,最近似乎变懒了.今天上班没有很多事,于是把之前遇到的一个问题记录下来. Web开发会涉及到很多类型转换的情况.我们知道,页面中的一切值都是字符串类型,而到后台,我们需要的可能是其他各种类型:同时,页面显示也是字符串类型.这就涉及到Web中基本的类型转换问题:从String转换为各种类型与从各种类型转换为String类型. 在Java Web开发中,进行上述转换一般有以下几种:1.在Servlet中,这一切的转换我们得自己写代码完成:2.在Struts1.x中,我们通过apa

oracle date 类型字段的处理方法_oracle

(1)在英文版本的ORACLE中默认日期格式为'DD-MON-YY',例如'01-JAN-98' 在汉化的中文版本中ORACLE默认日期格式为'日-月-年',例如'21-8月-2003'或'21-8月-03' (2)转换字符串为日期 使用ORACLE内部函数to_date() to_date()函数的参数是to_char()函数参数的反转. to_date(string_value , date_format) 变量定义如下: string_value :为字符串直接值(字符串本身).字符串列(

安卓 json date类型数据

问题描述 安卓 json date类型数据 将date类型数据放入json中时出现未知缓冲区错误是为什么?JSONObject jo = new JSONObject();jo.put(""Birthday""new Date()); 解决方案 这样会把date生成成一个json,里面会有date的属性与队形的值.最简单的方法就是(传递毫秒值):jo.put(""Birthday"" new Date().getTime())

hibernate中java.util.Date类型映射

在Hibernate中对于java.util.Date类型的映射为: java类型 Hibernate类型 Mysql类型 java.util.Date.java.sql.Date date DATE java.util.Date.java.sql.Time time TIME java.util.Date.java.sql.Timestamp timestamp TIMESTAMP 如果使用timestamp作为Date类型映射时,具体代码如下: Java代码 public class Use

java程序转换excel中科学记数法的数据为date类型

今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能. 但是导出后出现了一个问题,里边有一列存储时间的,存储的是long型毫秒数,在导出后就自动变成了科学记数法. 且不说从科学记数法中辨别出实际时间,即便是原本的毫秒值也是不易于辨别的,但是这些long值不能直接在excel中转换成date类型,因此我便想到使用poi来把这些毫秒值转换成date再写入原文件中. 从mongodb中导出的excel的科学记数法如下图: j

String类型怎么装换为java.sql.Date类型

问题描述 String类型怎么装换为java.sql.Date类型 在java中如何将String类型转换成java.sql.Date类型 解决方案 问题出在你的格式化字符串上.参考官网文档Class SimpleDateFormat格式化字符串是有保留字符的,每个字符代表不同的意义,区分大小写.大写的M表示的是月份,不是说你用在的时间的位置它就表示时间了.所以把时间格式化字符串改成yyyy-MM-dd HH:mm:ss,就能正确输出了. 解决方案二: 在java中如何将String类型转换成j

mysql-hibernate映射Date类型时,时间戳格式(yyyy-MM-dd HH:mm:ss)怎么写?

问题描述 hibernate映射Date类型时,时间戳格式(yyyy-MM-dd HH:mm:ss)怎么写? 现在的问题是:教程里说,hibernate框架对Date的默认类型就是时间戳(datetime),所以在映射文件里不用做额外配置,年月日格式和时分秒格式才需要做,那现在为什么时间戳格式出不来? 模仿一下年月日和时分秒的配置写法,测试时也是错误的,提示找不到这类型----> 解决方案 解决了,当时代码没写完,把全部代码写完就好了.... 解决方案二: 有关时间格式更改为 yyyy-MM-d

sql server-sqlserver向orcle中插入date类型数据

问题描述 sqlserver向orcle中插入date类型数据 如题,sqlserver语句向orcle数据库中插入date类型的数据. 解决方案 INSERT INTO中使用这个,转换 TO_DATE(sql_server_value,'YYYY.MM.DD HH24:MI:SS')