SpringMVC返回Json,自定义Json中Date类型格式

mac2022-06-30  22

http://www.cnblogs.com/jsczljh/p/3654636.html

————————————————————————————————————————————————————————————

 

SpringMVC返回Json,自定义Json中Date类型格式

SpringMVC返回Json数据依赖jackson这个开源的第三方类库。

若不加任何说明情况下Date类型将以时间戳的形式转换为Json并返回。

jackson提供了一些自定义格式的方法。我们只需继承它的抽象类JsonSerializer<T> ,并在指定的属性方法上添加注解@JsonSerialize即可实现。

1.编写Date转换类(yyyy-MM-dd)

public  class CustomDateSerializer  extends JsonSerializer<Date> {      public  void serialize(Date date, JsonGenerator gen, SerializerProvider provider) throws IOException, JsonProcessingException     {         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");         String formattedDate = format.format(date);         gen.writeString(formattedDate);     } }

 

 2.javabean中对应属性的get()方法添加注解 package com.easyui.model;   import java.util.Date;   import org.codehaus.jackson.map.annotate.JsonSerialize; import org.springframework.format.annotation.DateTimeFormat;   import com.easyui.utils.CustomDateSerializer;   public  class User {      private Integer id;        private String username;        private String password;        private String realname;        private String sex;        private Date birthday;        public  int getId() {          return id;     }        public  void setId(Integer id) {          this.id = id;     }        public String getUsername() {          return username;     }        public  void setUsername(String username) {          this.username = username;     }        public String getPassword() {          return password;     }        public  void setPassword(String password) {          this.password = password;     }        public String getRealname() {          return realname;     }        public  void setRealname(String realname) {          this.realname = realname;     }        public String getSex() {          return sex;     }        public  void setSex(String sex) {          this.sex = sex;     }       @JsonSerialize(using=CustomDateSerializer. class)      public Date getBirthday() {          return birthday;     }        public  void setBirthday(Date birthday) {          this.birthday = birthday;     } }

 

至此,就可以实现返回的JSON数据中日期格式自动转换为:yyyy-MM-dd 的格式

转载于:https://www.cnblogs.com/cuizhf/p/3791163.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)