SpringMVC 集成 jackson,日志格式报错:org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from String value

摘要:
org.codehaus.jackson.map.JsonMappingException:cannotconstructioninstanceofjava.util。DatefromStringvalue“2012-12-1212:01:01”:notavaildsrepresentation(错误:Cannotparsedate”2012-12-故宫博物院博客公园https://www.cnb

org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from String value '2012-12-12 12:01:01': not a valid representation (error: Can not parse date "2012-12- - 故宫博物院 - 博客园
https://www.cnblogs.com/suizhikuo/p/8393781.html

关于jackson中时间字符串的转换 - masquelo的专栏 - CSDN博客
https://blog.csdn.net/masquejava/article/details/10556281

org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from Str - kero921的博客 - CSDN博客
https://blog.csdn.net/kero921/article/details/79835627

package org.jeecgframework.core.common.controller;

import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.codehaus.jackson.JsonParser;
import org.codehaus.jackson.JsonProcessingException;
import org.codehaus.jackson.map.DeserializationContext;
import org.codehaus.jackson.map.JsonDeserializer;
import org.springframework.util.StringUtils;
/**
 * 解决@RequestBody接收json数据,Jackson 反序列化Date格式
 * @author scott
 *
 */
public class CustomJsonDateDeserializer extends JsonDeserializer<Date> {
    private SimpleDateFormat datetimeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    private SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

    @Override
    public Date deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
        String text = jp.getText();

        if (StringUtils.hasText(text)) {
            try {
                if (text.indexOf(":") == -1 && text.length() == 10) {
                    return this.dateFormat.parse(text);
                } else if (text.indexOf(":") > 0 && text.length() == 19) {
                    return this.datetimeFormat.parse(text);
                } else {
                    throw new IllegalArgumentException("Could not parse date, date format is error ");
                }
            } catch (ParseException ex) {
                IllegalArgumentException iae = new IllegalArgumentException("Could not parse date: " + ex.getMessage());
                iae.initCause(ex);
                throw iae;
            }
        } else {
            return null;
        }
    }

}
    //商品有效期限
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    private java.util.Date goodsdates;

    @Column(name ="goodsdates",nullable=true,length=20)
    @JsonDeserialize(using = CustomJsonDateDeserializer.class)
    public java.util.Date getGoodsdates() {
        return goodsdates;
    }

    public void setGoodsdates(java.util.Date goodsdates) {
        this.goodsdates = goodsdates;
    }

免责声明:文章转载自《SpringMVC 集成 jackson,日志格式报错:org.codehaus.jackson.map.JsonMappingException: Can not construct instance of java.util.Date from String value》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇nginx常用命令及nginx.conf基本配置Java面试,如何在短时间内做突击下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

sikuli简介

Sikuli脚本自动化,你在屏幕上看到的任何东西。Sikuli是一个开放源码的最初的用户界面设计组织在麻省理工学院的研究项目。现在是保持并进一步协调与开源社区开发的Sikuli实验室在美国科罗拉多州博尔德大学。Sikuli的MIT许可证下发布的。当然,你也可以使用sikuli的javaAPI使其在java环境下运行。小例子大体上了解sikuli的界面,下面来...

MySQL锁详解

MySQL锁详解update语句执行流程MySQL的锁介绍按照锁的粒度来说,MySQL主要包含三种类型(级别)的锁定机制:全局锁:锁的是整个database。由MySQL的SQLlayer层实现的表级锁:锁的是某个table。由MySQL的SQLlayer层实现的行级锁:锁的是某行数据,也可能锁定行之间的间隙。...

「雕爷学编程」Arduino动手做(26)——4X4矩阵键盘模块

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。108种传感器模块系列实验实验二十六:4X4矩阵键盘模块矩阵键盘是单片机外部设备中所使用的排布类似于矩阵的键盘组。工作原理矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。矩阵键盘所需库文件在ArduinoIDE1.8.0...

QT学习之如何在QToolBar中添加带图标的QToolButton并设置图标大小

在网上查到了三种方法,找到一种比较好理解的。图标存放位置可在工程文件夹里创建自命名的文件夹如"res",再在根目录下创建qrc文件,如图:然后我们需要对qrc文件进行编辑:res/1.pngres/2.pngres/3.pngres/4.pngres/5.pngres/6.pngres/7.png这里的"res"是自己命名的存放图标的目录。接着我们需要在项目...

制作多合一安装U盘(Windows + Linux + macOS)精解

在此,我给大家讲解一下,如何制作多系统安装U盘。首先,本教程用到的工具如下:1.WinSetupFromUSB1.9下载链接:https://share.weiyun.com/5gtbB3y密码:vector2.分区助手专业版下载链接:http://www2.aomeisoftware.com/download/pacn/PAClean.zip3.各类Win...