1.首先定义一个格式化Date 类,这个类要实现JsonSerializer 接口
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
/**
* Date 转为json 格式时格式化时间格式
* @author dell
*
*/
public class JsonDateSerializer extends JsonSerializer<Date> {
private SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@Override
public void serialize(Date date, JsonGenerator gen, SerializerProvider provider)
throws IOException, JsonProcessingException {
String value = "";
if(null !=date){
value = dateFormat.format(date);
}
gen.writeString(value);
}
}
2. 在需要格式化的get方法上加上, @JsonSerialize(using=JsonDateSerializer.class)
如:
@JsonSerialize(using=JsonDateSerializer.class)
public Date getCreatedate() {
return createdate;
}
public void setCreatedate(Date createdate) {
this.createdate = createdate;
}
转化前json结果:
{"resData":{"status":"1","message":"成功","data":{
"pickupInfo":{"pid":"104917","orderid":"17021700912600","prono":"17021702","proname":"boce普??2",
"pickupcode":"46W5S1","pickupnumber":1,"status":"2","userid":"1111110978",
"usercode":"123456789012345678","warehouseid":"天津市河东区仓库街道","createdate":1487260800000,
"pickupdate":null,"username":"提货人信??,"userphone":"15902248761","qualitystan":"","ysendtime":"",
"penaltyrate":0,"keepgoods":"","remark":"","istransferfeeconfirmed":"","isbondconfirmed":""}
}
转化后结果:
{"resData":{"status":"1","message":"成功","data":{
"pickupInfo":{"pid":"104917","orderid":"17021700912600","prono":"17021702","proname":"boce普??2",
"pickupcode":"46W5S1","pickupnumber":1,"status":"2","userid":"1111110978",
"usercode":"123456789012345678","warehouseid":"天津市河东区仓库街道","createdate":2017-02-17 13:58:59,
"pickupdate":null,"username":"提货人信??,"userphone":"15902248761","qualitystan":"","ysendtime":"",
"penaltyrate":0,"keepgoods":"","remark":"","istransferfeeconfirmed":"","isbondconfirmed":""}
}
相关推荐
在Spring Boot应用中,当你使用`@ResponseBody`注解将对象转换为JSON并发送到客户端时,日期(Date)类型的字段通常需要特殊处理,因为它们默认可能会被转换为Unix时间戳或者不友好的格式。本篇文章主要介绍了两种...
然后,可以在控制器方法上添加`@ResponseBody`注解,声明方法将直接序列化结果对象为HTTP响应体的Content-Type为`application/json`的数据。 ```java @RequestMapping(value = "getJsonComments") @ResponseBody...
作为一名开发者,我们经常会遇到日期格式化的问题,例如如何将日期字符串解析成 Date 对象,或者如何将 Date 对象格式化成指定的日期字符串格式。在本文中,我们将介绍如何使用 HttpMessageConverter 实现全局日期...
本篇文章将介绍如何在Spring框架中配置JSON日期格式化,以便在Web服务响应中以自定义的日期格式返回日期。 首先,我们需要解决Spring MVC中日期转换为JSON时默认显示为时间戳的问题。这可以通过创建一个自定义的`...
这里我们使用了 `@ResponseBody` 注解来告诉 Spring MVC 直接将返回的对象转换为 JSON 格式的字符串。同时,`produces` 属性指定了返回的内容类型为 JSON。 ### 总结 本文详细介绍了如何在 Spring MVC 中创建一个...
- `produces`: 指定响应内容类型,根据请求头Accept字段中的类型返回相应内容。如`@RequestMapping(produces = "text/html")`。 - `params`: 控制请求参数,只有当请求参数满足条件时,方法才执行。如`@...
如果需要对JSON序列化和反序列化进行自定义,可以在`application.properties`或`application.yml`中配置Jackson属性,例如日期格式化: ```properties spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring....
4. 数据格式的一致性是前端与后端通信的关键,需要确保日期字符串的正确解析和格式化。 5. 前端验证提高用户体验,确保数据的准确性。 理解并掌握这些知识点,你就能在JavaWeb应用中有效地实现日期控件,为用户提供...
2. **格式化日期**:为了便于比较,我们需要将当前时间格式化为特定的字符串格式(如“yyyy-MM-dd”),然后再将其转换回`Date`对象。这一步可以通过`SimpleDateFormat`实现: ```java SimpleDateFormat sdf = new...
5. **处理JSON响应中的日期**:当你使用`@ResponseBody`注解返回JSON时,Spring MVC默认会将日期转换为时间戳。如果想改变这个行为,可以自定义一个`ObjectMapper`并注册到Spring中,像这样: ```java @Component...
2. **返回 JSON 数据**:使用 `@ResponseBody` 注解来返回 JSON 数据。 ```java @RequestMapping(value = "/returnJson", method = RequestMethod.GET) @ResponseBody public User returnJson() { User user = ...
使用如Spring MVC或Jersey等框架,将格式化后的数据作为JSON响应发送给前端。确保设置正确的MIME类型(如`application/json`)。 ### 三、前端ECharts集成 1. **引入ECharts库** 首先,要在HTML页面中引入...
此外,还使用了`@JsonFormat`来格式化日期,便于JSON序列化和反序列化: ```java package com.hxy.bean; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok....
单独用XMl不能显示页面,我们使用格式化技术,比如CSS或者XSL,才能显示XML标记创建的文档。 我们在前面第一章讲到XML是将数据和格式分离的。XML文档本身不知道如何来显示,必须有辅助文件来帮助实现。(XML取消了...