最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中的實體類時間格式化

 更新時間:2022年06月27日 11:15:46   作者:Try?and?try?again  
這篇文章主要介紹了java中的實體類時間格式化方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

實體類時間格式化

java 實體類 時間格式化注解

@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date time;
  • pattern:時區(qū)
  • timezone:時區(qū)

@JsonFormat 默認是標準時區(qū)的時間,多出現(xiàn)少8小時的情況

使用時,按需求加上時區(qū) 北京時間 東八區(qū) timezone=”GMT+8”

作用:后臺的時間 格式化 發(fā)送到前臺

@DateTimeFormat 接受前臺的時間格式 傳到后臺的格式

實體類時間類型屬性常用注解

假如有如下實體類:

import java.util.Date;
 
public class DateVo {
    private Date date;
 
    public void setDate(Date date){
        this.date = date;
    }
    public Date getDate(){
        return date;
    }
}

提供如下接口:

@RestController
@RequestMapping("/date")
public class DateController {
 
    @RequestMapping("test")
    public DateVo getDate(DateVo vo){
        System.out.println(vo.getDate());
 
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String date = sdf.format(vo.getDate());
        System.out.println(date);
 
        DateVo dateVo = new DateVo();
        dateVo.setDate(new Date());
        return dateVo;
    }
}

直接訪問接口(參數(shù)vo: 2020-12-25 11:22:33),會拋出以下異常:

理由很簡單:類型參數(shù)不匹配,傳入?yún)?shù)vo的date為字符串類型,而要求時Date類型,這就需要入?yún)⒏袷交?/p>

注解一:DateTimeFormt(入?yún)⒏袷交?

注解@DateTimeFormt是由spring框架提供的,作用就是實現(xiàn)在入?yún)⒏袷交^程中對時間類型參數(shù)指定格式。

對上述實體類做如下修改:

public class DateVo {
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date date;
 
    public void setDate(Date date){
        this.date = date;
    }
    public Date getDate(){
        return date;
    }
}

再次訪問接口(參數(shù)vo: 2020-12-25 11:22:33),訪問成功,在控制臺會打印如下內(nèi)容:

Fri Dec 25 11:22:33 CST 2020

2020-12-25 11:22:33 

同時向前端返回:

"2020-12-25T03:40:26.625+00:00"

對于這個返回內(nèi)容可能不符合前端時間格式要求,需要對其進行出參格式化

注解二:JsonFormt(出參格式化)

注解@JsonFormt是由jackson提供的,由于spring框架中默認集成的json工具是jackson(國內(nèi)使用更廣泛的fastjson,其提供注解@JSONField),因此使用注解@JsonFormt不需要另外引入依賴,再次對實體類修改:

public class DateVo {
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(
    	pattern = "yyyy-MM-dd HH:mm:ss",
   	 	timezone = "GMT+8"
	)
	private Date date;
 
    public void setDate(Date date){
        this.date = date;
    }
    public Date getDate(){
        return date;
    }
}

繼續(xù)訪問接口(參數(shù)vo: 2020-12-25 11:22:33)返回:

2020-12-25 11:40:26

注意:在使用注解@JsonFormt時必須要指定時區(qū),默認情況下為0時區(qū),于北京時間(東8時區(qū))相差8個小時

注解三:JSONField(出參格式化)

在國內(nèi)使用更多是Alibaba 開源的fasejson,其同樣提供了指定時間格式的注解。使用spring框架開發(fā)時需要注意的是spring框架中沒有集成fastjson,因此需要在pom文件中引入其依賴,實體類修改如下:

public class DateVo {
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
	private Date date;
 
    public void setDate(Date date){
        this.date = date;
    }
    public Date getDate(){
        return date;
    }
}

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中的 VO,BO,DO 對象命名問題小結(jié)

    Java中的 VO,BO,DO 對象命名問題小結(jié)

    本文講解VO,BO,DO 的作用以及如何使用,分析了如何消除三者之間重復的代碼,同樣結(jié)合現(xiàn)實生活中領導配秘書來類比講解,對Java  VO  對象命名相關(guān)知識感興趣的朋友一起看看吧
    2024-01-01
  • springboot中nacos-client獲取配置的實現(xiàn)方法

    springboot中nacos-client獲取配置的實現(xiàn)方法

    本文主要介紹了springboot中nacos-client獲取配置的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • Java使用POI實現(xiàn)excel文件的導入和導出

    Java使用POI實現(xiàn)excel文件的導入和導出

    這篇文章主要為大家詳細介紹了Java如何使用POI實現(xiàn)excel文件的導入和導出功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2023-12-12
  • Spring Mvc中傳遞參數(shù)方法之url/requestMapping詳解

    Spring Mvc中傳遞參數(shù)方法之url/requestMapping詳解

    在開發(fā)中,參數(shù)傳遞是必不可少的一個功能,下面這篇文章主要給大家介紹了關(guān)于Spring Mvc中傳遞參數(shù)方法之url/requestMapping的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • JavaWeb實現(xiàn)上傳文件功能

    JavaWeb實現(xiàn)上傳文件功能

    這篇文章主要為大家詳細介紹了JavaWeb實現(xiàn)上傳文件功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • Java多線程并發(fā)FutureTask使用詳解

    Java多線程并發(fā)FutureTask使用詳解

    Java?的多線程機制本質(zhì)上能夠完成兩件事情,異步計算和并發(fā),F(xiàn)utureTask?是基于?Runnable?實現(xiàn)的一個可取消的異步調(diào)用?API,本文給大家介紹Java?多線程并發(fā)FutureTask及基本使用,需要的朋友可以參考下
    2022-06-06
  • Spring?Boot?集成?MyBatis?全面講解(最新推薦)

    Spring?Boot?集成?MyBatis?全面講解(最新推薦)

    MyBatis 是一款優(yōu)秀的持久層框架,與 Spring Boot 集成后可以大大簡化開發(fā)流程,本文將全面講解如何在 Spring Boot 中集成 MyBatis,包括環(huán)境配置、基礎操作、高級功能和最佳實踐,需要的朋友可以參考下
    2024-12-12
  • mybatis-plus主鍵生成策略

    mybatis-plus主鍵生成策略

    這篇文章主要介紹了mybatis-plus主鍵生成策略,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • Java利用讀寫的方式實現(xiàn)音頻播放代碼實例

    Java利用讀寫的方式實現(xiàn)音頻播放代碼實例

    這篇文章主要介紹了Java利用讀寫的方式實現(xiàn)音頻播放代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • java EasyExcel面向Excel文檔讀寫邏輯示例詳解

    java EasyExcel面向Excel文檔讀寫邏輯示例詳解

    這篇文章主要為大家介紹了java EasyExcel面向Excel文檔讀寫邏輯示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07

最新評論

定南县| 通辽市| 平江县| 彰化市| 当涂县| 靖远县| 鹤岗市| 和田县| 奇台县| 汝州市| 长宁县| 七台河市| 南宫市| 博客| 桓仁| 无锡市| 元江| 武威市| 花莲县| 六盘水市| 宽甸| 河北区| 冕宁县| 浏阳市| 邹城市| 黄浦区| 荥经县| 萨嘎县| 淮安市| 皮山县| 观塘区| 海兴县| 达孜县| 香河县| 贵南县| 班戈县| 富宁县| 东源县| 碌曲县| 文水县| 马鞍山市|