springmvc 自定义全局日期转换及遇到的坑

在搞 日期转换的时候, 希望 可以 全局的,灵活的转换日期。 可是 不是出错, 就是 不方便,麻烦。

1, 第一种方式, 参考地址: https://my.oschina.net/kings0/blog/725415 这种方式是 spring3 的,不够灵活,而且性能不嘉,有缺点 2, 第二种方式: 参考地址: http://www.cnblogs.com/ssslinppp/p/4600043.html 即在 对应的 参数 bean 的 属性上面, 加上 注解, 想要 什么格式都可以 。 可是感觉 改动 也 挺麻烦的 输入图片说明

3, 第三种就是 spirng4 的 mvc 出来的, 全局的,而且 可以 随便使用的, 很灵活,可以自定义很多 转格式的, 调用也 很方便 参考地址:https://my.oschina.net/elim1/blog/811653 以及参考地址: http://blog.csdn.net/u012373815/article/details/50252073

可是 我在 使用 第三种方式的时候,老是出来问题。。。、

org.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 4 errors
Field error in object 'hrEffPplanCyclePo' on field 'objReportEtime': rejected value [2017-01-23]; codes [typeMismatch.hrEffPplanCyclePo.objReportEtime,typeMismatch.objReportEtime,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [hrEffPplanCyclePo.objReportEtime,objReportEtime]; arguments []; default message [objReportEtime]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'objReportEtime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type java.lang.String to type @com.skg.base.db.annotion.IField java.util.Date for value '2017-01-23'; nested exception is java.lang.IllegalArgumentException]
Field error in object 'hrEffPplanCyclePo' on field 'objReportStime': rejected value [2017-01-05]; codes [typeMismatch.hrEffPplanCyclePo.objReportStime,typeMismatch.objReportStime,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [hrEffPplanCyclePo.objReportStime,objReportStime]; arguments []; default message [objReportStime]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'objReportStime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type java.lang.String to type @com.skg.base.db.annotion.IField java.util.Date for value '2017-01-05'; nested exception is java.lang.IllegalArgumentException]
Field error in object 'hrEffPplanCyclePo' on field 'paEtime': rejected value [2017-01-31]; codes [typeMismatch.hrEffPplanCyclePo.paEtime,typeMismatch.paEtime,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [hrEffPplanCyclePo.paEtime,paEtime]; arguments []; default message [paEtime]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'paEtime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type java.lang.String to type @com.skg.base.db.annotion.IField java.util.Date for value '2017-01-31'; nested exception is java.lang.IllegalArgumentException]
Field error in object 'hrEffPplanCyclePo' on field 'paStime': rejected value [2017-01-23]; codes [typeMismatch.hrEffPplanCyclePo.paStime,typeMismatch.paStime,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [hrEffPplanCyclePo.paStime,paStime]; arguments []; default message [paStime]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'paStime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type java.lang.String to type @com.skg.base.db.annotion.IField java.util.Date for value '2017-01-23'; nested exception is java.lang.IllegalArgumentException]
	at org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument(ModelAttributeMethodProcessor.java:112)

出现转型 异常, 搞得我还以为是 方法搞错了,因为 自定义的 转型方法并没有调用的。。。 这就郁闷了, 可是我并没有放弃 继续 百度 看别人的资料, 看了很多, 比较菜鸟就是这样了。 后来我发现 是 因为 注入的时候 ,位置的问题 :


    

    



	 
	
	

之前我使用 将 放在了 后面的 , 我把它放在了 前面之后就 起效果了,就是这坑, 至于原因,需要看看spring 源码。。。因此有时候 这样的 引用 先后位置 特别重要, 能够坑死人。。。

转载于:https://my.oschina.net/ouminzy/blog/871721

你可能感兴趣的:(springmvc 自定义全局日期转换及遇到的坑)