springmvc时间反序列化
来源:互联网 发布:哈布斯堡的灭亡知乎 编辑:程序博客网 时间:2024/06/10 21:45
在springmvc中是可以将对象作为参数直接从前台传递到后台的,但是在传递过程中,由于选择的json插件不同,对于时间的格式支持会出现差异,也就会导致@DateTimeFormat(pattern = "yyyy-MM-dd") 这种方式失去效用。下面展示一个简单的例子用来弥补这种问题。
package com.eshop.bargin.util;
import java.io.IOException;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.codehaus.jackson.JsonNode;
import org.codehaus.jackson.JsonParser;
import org.codehaus.jackson.JsonProcessingException;
import org.codehaus.jackson.map.DeserializationContext;
import org.codehaus.jackson.map.JsonDeserializer;
/**
*
* Description: TODO json时间格式反序列化.
* date: 2016-9-29 上午11:12:03
* @author zqn
*/
public class CustomDateDeserializer extends JsonDeserializer<Date> {
@Override
public Date deserialize(JsonParser jp, DeserializationContext ctxt)
throws IOException, JsonProcessingException {
JsonNode node = jp.getCodec().readTree(jp);
String date=node.getTextValue();
Date fimDate=null;
try{
fimDate=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(date);
}catch(ParseException e){
e.printStackTrace();
}
return fimDate;
}
}
//在实体类中添加的注解
@JsonDeserialize(using = CustomDateDeserializer.class)
public void setExpectReceiptTime(Date expectReceiptTime) {
this.expectReceiptTime = expectReceiptTime;
}
这种是最简单的方式,还可以根据自己的要求做一些扩展。
0 0
- springmvc时间反序列化
- springmvc使用Jackson序列化反序列化日期
- 各种序列化反序列化操作时间对比
- JSON时间对象序列化与反序列化<Timestamp>
- fastjson反序列化ZonedDateTime格式的时间
- 反序列化
- Xml 反序列化
- 反序列化对象
- 反序列化问题解决
- json 反序列化
- Json反序列化
- xml反序列化
- xml反序列化
- android 反序列化
- php 反序列化
- json反序列化
- json反序列化
- 反序列化
- servlet 总结
- 策略模式
- C语言文件操作----文件的读写
- System类
- WindowManager$BadTokenException
- springmvc时间反序列化
- php获取结果集的几个方法
- ajax跨域问题
- DOMContentLoaded
- linux串口权限问题
- ES6学习18(二进制数组)
- 总结js常用函数和常用技巧(持续更新)
- Reporting Service 运行报错,提示解密对称密钥出现错误
- java序列化