好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Spring Boot LocalDateTime格式化处理的示例详解

jdk8的新特性中time api,其包括clock、duration、instant、localdate、localtime、localdatetime、zoneddatetime,在这里就不一一介绍了,相信很多人都会使用其代替date及calendar来处理日期时间,下面介绍spring boot处理localdatetime格式。

controller接收localdatetime参数

在spring中,接收localdatetime日期时间数据时,只需要使用@datetimeformat注解即可。@datetimeformat可以注解在字段、参数以及方法上,如果接收的为dto,则需要将@datetimeformat注解在dto中的字段上。

需要注意的是pattern是全匹配,参数格式必须要和定义的一样。

?

1

2

3

4

5

6

7

8

9

@getmapping ( "date" )

public object date( @requestparam @datetimeformat (pattern = "yyyy-mm-dd hh:mm:ss" ) localdatetime date) {

  return date;

}

 

@getmapping ( "date2" )

public object date( @requestparam @datetimeformat (pattern = "yyyy-mm-dd" ) localdate date) {

  return date;

}

responsebody格式化localdatetime

spring默认使用使用jackson来进行json格式转换,我们只需要使用@bean注解创建一个objectmapperbean,并将javatimemodule注册到objectmapper中即可,spring会使用该bean创建mappingjackson2httpmessageconverter进行json格式转换。

这里需要加入jackson的jsr310扩展包。

?

1

2

3

4

5

<dependency>

  <groupid>com.fasterxml.jackson.datatype</groupid>

  <artifactid>jackson-datatype-jsr310</artifactid>

  <version> 2.8 . 9 </version>

</dependency>

?

1

2

3

4

5

6

7

8

9

10

@bean (name = "mapperobject" )

public objectmapper getobjectmapper() {

  objectmapper om = new objectmapper();

  javatimemodule javatimemodule = new javatimemodule();

  javatimemodule.addserializer(localdatetime. class , new localdatetimeserializer(datetimeformatter.ofpattern( "yyyy-mm-dd hh:mm:ss" )));

  javatimemodule.addserializer(localdate. class , new localdateserializer(datetimeformatter.ofpattern( "yyyy-mm-dd" )));

  javatimemodule.addserializer(localtime. class , new localtimeserializer(datetimeformatter.ofpattern( "hh:mm:ss" )));

  om.registermodule(javatimemodule);

  return om;

}

另外,如果持久层框架使用mybatis,同样需要加入mybatis的jsr310 扩展包。

?

1

2

3

4

5

<dependency>

  <groupid>org.mybatis</groupid>

  <artifactid>mybatis-typehandlers-jsr310</artifactid>

  <version> 1.0 . 2 </version>

</dependency>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:https://blog.csdn.net/junlovejava/article/details/78112240

查看更多关于Spring Boot LocalDateTime格式化处理的示例详解的详细内容...

  阅读:16次