一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - springboot:接收date類型的參數(shù)方式

springboot:接收date類型的參數(shù)方式

2022-02-20 11:44huiy_小溪 Java教程

這篇文章主要介紹了springboot:接收date類型的參數(shù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

springboot:接收date類型的參數(shù)

今天有個postmapping方法,地址都正確,就是死活進不去,真是奇怪了。

終于從日志中得出些端倪,見下:

springboot:接收date類型的參數(shù)方式

只有這個屬性報錯,恰恰這個屬性是Date型。

這句話說得更清楚:

"defaultMessage":"Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'expireTime'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@com.alibaba.fastjson.annotation.JSONField java.util.Date] for value '2018-06-29'; nested exception is java.lang.IllegalArgumentException",

查找資料,說只要在字段上加上注解:@DateTimeFormat(pattern="yyyy-MM-dd")

springboot:接收date類型的參數(shù)方式

加上后就一切OK了。

springboot 傳遞Date等實體參數(shù)時候報錯

傳遞參數(shù)Date時候報錯:

"exception": "org.springframework.web.method.annotation.MethodArgumentTypeMismatchException",
"message": "Failed to convert value of type 'java.lang.String' to required type 'java.util.Date'; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [@org.springframework.web.bind.annotation.RequestParam java.util.Date] for value '2016-12-27 09:44:58'; nested exception is java.lang.IllegalArgumentException",
swagger2:
@ApiImplicitParam(name = "startDate", paramType = "query", value = "生效時間", dataType = "Date"),
@ApiImplicitParam(name = "endDate", paramType = "query", value = "失效時間", dataType = "Date"),

params由:

?
1
2
@RequestParam(value = "startDate", required = false) Date startDate,
@RequestParam(value = "endDate", required = false) Date endDate,

改為:

?
1
2
@ModelAttribute Date startDate,
@ModelAttribute Date endDate,

此時 參數(shù)傳遞正常 但是date值都存在切為當前時間

改回

?
1
2
@RequestParam(value = "startDate", required = false) Date startDate,
@RequestParam(value = "endDate", required = false) Date endDate,

并加入

?
1
2
3
4
@InitBinder
protected void initBinder(WebDataBinder binder) {
    binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"), true));
}

此時參數(shù)傳遞正常

時間段查詢條件

?
1
2
3
4
5
6
7
8
9
if (startDate!=null) {//開始時間
    if(endDate!=null){//結(jié)束時間  結(jié)束時間部位空  查詢時間段內(nèi)數(shù)據(jù)
        predicates.add(criteriaBuilder.greaterThanOrEqualTo(root.get("endDate").as(Date.class), startDate ));//輸入開始時間>=開始生效時間
        predicates.add(criteriaBuilder.lessThanOrEqualTo(root.get("startDate").as(Date.class), endDate ));//輸入結(jié)束時間<=失效時間
    }else{
        predicates.add(criteriaBuilder.lessThanOrEqualTo(root.get("startDate").as(Date.class), startDate ));
        predicates.add(criteriaBuilder.greaterThanOrEqualTo(root.get("endDate").as(Date.class), startDate ));
    }
}

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

原文鏈接:https://www.cnblogs.com/huiy/p/9047613.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 男人女人日皮 | 美女靠逼动漫 | 亚洲精品www久久久久久 | 国产欧美精品一区二区三区四区 | 午夜欧美精品 | japonensis日本护士 | 午夜办公室 | 91精品啪在线观看国产线免费 | 欧美8x8x | asspics大尿chinese | 日本偷拍xxxxxxww | 男人都懂www深夜免费网站 | 国产成人手机在线好好热 | 国产伊人久久 | 亚洲阿v天堂在线2017 | 精品国产91高清在线观看 | 欧美日韩亚洲国内综合网俺 | 国产精品国产三级国产专区不 | 国产精品女同久久免费观看 | 午夜看片a福利在线观看 | 黑人巨荃大战乌克兰美女 | 波多野结在线观看 | 婷婷伊人综合亚洲综合网 | 日本精品vide·ssex日本 | 青青青手机视频在线观看 | 男女爆操 | 欧美精品一区二区三区免费 | 日本免费高清在线观看播放 | 好男人资源免费观看 | 亚洲一级视频在线观看 | 亚洲成人aa | 国产精品99久久免费观看 | 韩国三级理韩国三级理人伦 | 亚洲精品一区制服丝袜 | 青青草国产免费国产是公开 | 日本韩国在线 | 呜呜别塞了啊抽插 | 五月天婷婷亚洲 | 国产日韩欧美精品在线 | 久久伊人影视 | 岛国虐乳紧缚媚药调教 |