您的位置:首页 > 编程语言 > Java开发

JSON对象反序列化为Java对象的时候自定义Date类型的字符串格式

2017-12-19 18:17 726 查看
场景:假设前端传递过来一个JSON对象为

{

    "money":"123.123",

    "date":"2017/12/12"

}

需要将该对象反序列化为Java对象,这个时候需要修改JSON对象反序列化为Java的规则,否则字符串类型的date转化为Java的Date对象时就会报错

处理如下:

@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {

@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
super.configureMessageConverters(converters);
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setDateFormat("yyyy/MM/dd");
fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
fastConverter.setFastJsonConfig(fastJsonConfig);
converters.add(fastConverter);
}
}

假设JavaBean如下
public class FormatModel {

private double money;
private Date date;

public double getMoney() {
return money;
}

public void setMoney(double money) {
this.money = money;
}

public Date getDate() {
return date;
}

public void setDate(Date date) {
this.date = date;
}
}这样在controller中使用如下注解可以转化成功如下
@RequestMapping(value = "h2")
public @ResponseBody
Object testHeaderContext(@RequestBody FormatModel formatModel) {
System.out.println(formatModel.getDate());
return "111";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  前端
相关文章推荐