Spring中日期格式转换

Posted Drajun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中日期格式转换相关的知识,希望对你有一定的参考价值。

一、背景

使用SSM+Maven搭建项目

其中mysql中 日期字段是DATETIME类型

Controller返回给前端的Json数据的是long类型   "Date":"1528324651545"

我需要的是yyyy-MM-dd格式的

 

二、解决

1.在该实体对应的mapper文件里,修改resultMap中列的数据类型

 1 <mapper namespace="com.ssm.mapper.PeopleMapper">
 2 
 3     <resultMap type="com.ssm.model.people" id="peopleRM">
 4       .....
 5 
 6       <result property="b_date" column="BIR_DATE"  javaType="java.sql.Date"/>
 7 
 8       .....
 9 
10 </resultMap>

 

2.在实体类相应字段的getter方法上加入注解

1 private Date b_date;
2 
3 @DateTimeFormat(pattern="yyyy-MM-dd")
5 public Date getB_date(){
7   return b_date;
9 }

  2.1 当然也可以写成如下:

1 private Date b_date;
2 
3 @DateTimeFormat(iso=ISO.DATE)
5 public Date getB_date(){
7   return b_date;
9 }

  2.2 当你实体类中的字段为Time类型,则resultMap中列的类型应为java.sql.Time

    注解为@DateTimeFormat(pattern="HH:mm:ss")

 

3.在maven的pom.xml中引入Joda

1     <!-- 日期时间库 -->
2     <dependency>
3         <groupId>joda-time</groupId>
4         <artifactId>joda-time</artifactId>
5         <version>2.3</version>
6     </dependency>

 

4.在springmvc的配置文件中,增加注解驱动

 1 <mvc:annotation-driven/> 

 

三、以上所涉及相关知识,请自行查阅

以上是关于Spring中日期格式转换的主要内容,如果未能解决你的问题,请参考以下文章

sql 日期转换代码片段 - Dato,120,konvertere

如何从我的 DatePicker 片段中传输格式化的日期字符串?

又是一年金九银十!javastring类型的日期格式转换

spring类型转换器(三)

如何使用 Thymeleaf 和/或 spring 表达式语言来转换字符串,例如“2018-02-21”转换为日期格式 dd/mm/yyyy(例如“21/02/2018”)

Spring MVC - 将用户时区的日期转换为 UTC