MyBatis如何處理MySQL字段類型date與datetime
1. MySQL Data Type
1)DATETIME
- 顯示格式:yyyy-MM-dd HH:mm:ss
- 時(shí)間范圍:[ '1000-01-01 00:00:00'到'9999-12-31 23:59:59']
2)DATE
- 顯示格式:yyyy-MM-dd
- 時(shí)間范圍:['1000-01-01'到'9999-12-31']
3)TIMESTAMP
- 顯示格式:yyyy-MM-dd HH:mm:ss
- 時(shí)間范圍:[ '1970-01-01 00:00:00'到'2037-12-31 23:59:59']
2. MyBatis處理日期有兩種的jdbcType
- 2.1 jdbcType=DATE
- 2.2 jdbcType=TIMESTAMP
3. 當(dāng)我們使用java.util.Date作為實(shí)體的日期類型時(shí)
(JAVA沒(méi)有DateTime這個(gè)類,Date類能夠同時(shí)表示日期和時(shí)間)
java.util.Date實(shí)際上是能夠表示MySQL的三種字段類型:
- 3.1 date
- 3.2 datetime
- 3.3 timestamp
4. MyBatis處理方式
而實(shí)際將java.util.Date當(dāng)做參數(shù)傳遞給Mapper的時(shí)候
- 4.1 當(dāng)不指定jdbcType時(shí),日期會(huì)自動(dòng)轉(zhuǎn)化會(huì)MySQL的timestamp
- 4.2 指定jdbcType=TIMESTAMP,日期會(huì)自動(dòng)轉(zhuǎn)化會(huì)MySQL的timestamp
- 4.3 指定jdbcType=DATE,那么MyBatis會(huì)將傳入?yún)?shù)截取為2018-07-24(Date)
當(dāng)指定jdbcType=DATE的時(shí)候
MyBatis會(huì)自動(dòng)截取掉時(shí)間
如果MySQL的日期字段類型是datetime或者timestamp一定不要這么寫
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MyBatis-Plus UpdateWrapper 使用常見(jiàn)陷阱和解決方案
MyBatis-Plus是Mybatis的一個(gè)增強(qiáng),簡(jiǎn)化了Mybatis的開(kāi)發(fā)過(guò)程,不僅保持了Mybatis原有的功能,而且在無(wú)代碼侵略下增加了許多的增強(qiáng)的功能,提供了豐富的CRUD操作,單表的CRUD操作無(wú)需編寫SQL語(yǔ)句,本文介紹的是UpdateWrapper的常見(jiàn)陷阱和對(duì)應(yīng)的解決方案,感興趣的朋友一起看看吧2024-08-08解決Java提示正在嘗試分配更低的訪問(wèn)權(quán)限問(wèn)題
在本篇文章里小編給大家整理的是關(guān)于解決Java提示正在嘗試分配更低的訪問(wèn)權(quán)限問(wèn)題的相關(guān)方法內(nèi)容,有需要的朋友們跟著參考學(xué)習(xí)下。2019-07-07解決項(xiàng)目沒(méi)有build path的問(wèn)題
這篇文章主要介紹了解決項(xiàng)目沒(méi)有build path的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01mybatisPlus如何使用MetaObjectHandler對(duì)字段進(jìn)行更新
這篇文章主要介紹了mybatisPlus如何使用MetaObjectHandler對(duì)字段進(jìn)行更新問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04springboot接口接收數(shù)組及多個(gè)參數(shù)的問(wèn)題及解決
這篇文章主要介紹了springboot接口接收數(shù)組及多個(gè)參數(shù)的問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11Spring?Security方法級(jí)安全控制@PreAuthorize注解的靈活運(yùn)用小結(jié)
本文將帶著大家講解?@PreAuthorize?注解的核心原理、SpEL?表達(dá)式機(jī)制,并通過(guò)的示例代碼演示如何在實(shí)際項(xiàng)目中靈活運(yùn)用該注解實(shí)現(xiàn)細(xì)粒度的權(quán)限控制,感興趣的朋友一起看看吧2025-04-04簡(jiǎn)單了解JavaCAS的相關(guān)知識(shí)原理
這篇文章主要介紹了簡(jiǎn)單了解JavaCAS的相關(guān)知識(shí),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Hibernate validator使用以及自定義校驗(yàn)器注解
這篇文章主要介紹了Hibernate validator使用以及自定義校驗(yàn)器注解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01jsp+dao+bean+servlet(MVC模式)實(shí)現(xiàn)簡(jiǎn)單用戶登錄和注冊(cè)頁(yè)面
這篇文章主要介紹了jsp+dao+bean+servlet(MVC模式)實(shí)現(xiàn)簡(jiǎn)單用戶登錄和注冊(cè)頁(yè)面,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12