JavaWeb電商項目筆記(七、mybatis-generator生成數(shù)據(jù)對象和時間戳優(yōu)化)

一、mybatis-generator生成數(shù)據(jù)對象

確保mybatis的generatorConfig.xml配置文件和datasource.properties文件都沒有問題。
雙擊右側(cè)已經(jīng)下載安裝好的mybatis-generator插件下的generate命令。

Paste_Image.png

這時下方運(yùn)行窗口會輸出【BUILD SUCCESS】,如圖:

Paste_Image.png

這時左側(cè)的項目結(jié)構(gòu):

  • 在dao包下會多出對應(yīng)數(shù)據(jù)表的各種增刪改查API;
  • pojo包下會多出和數(shù)據(jù)庫表對應(yīng)的對象;
  • 在resources目錄下會多出mappers包,包下是與dao層接口相對應(yīng)的實現(xiàn)xml文件,每個xml對應(yīng)一個數(shù)據(jù)庫表接口。
Paste_Image.png
Paste_Image.png

現(xiàn)在以Cart表為例,依次截圖:
pojo:

Paste_Image.png

dao:

Paste_Image.png

mappers:

Paste_Image.png

以上就是mybatis-generator插件執(zhí)行后所自動生成的內(nèi)容。大大方便了我們程序員開發(fā)。在此給mybatis團(tuán)隊一個大大的贊!

二、時間戳優(yōu)化

之前我在建數(shù)據(jù)庫的時候,為每個表創(chuàng)建了【create_time】和【update_time】字段,其中【create_time】是這條記錄被創(chuàng)建的時間,而【update_time】是這條記錄被更新的時間。這兩個字段,是業(yè)界普遍公認(rèn)的良好做法,當(dāng)我們在查一些線上的業(yè)務(wù)邏輯問題的時候,這兩個字段能夠幫助我們快速鎖定問題點(diǎn),是非常非常有用的!

那么,因為這兩個字段不可或缺,但作為程序員,我們并不希望每次進(jìn)行數(shù)據(jù)庫的插入還要特地關(guān)注這兩個字段,未免太繁瑣了。最好是,我們不在業(yè)務(wù)上關(guān)注這兩個字段,而是數(shù)據(jù)庫能自動在我們每次插入數(shù)據(jù)的時候更新它們。所以呢,接下來,就讓數(shù)據(jù)庫來幫助我們解決這個問題吧。

以mappers包下的CartMapper.xml為例:
找到創(chuàng)建和更新的sql。

  • 創(chuàng)建的sql
Paste_Image.png

將原先的create_time和update_time對應(yīng)的value,改成mysql內(nèi)置的獲取當(dāng)前時間函數(shù)now()。如下圖:

Paste_Image.png

同理,其他的insert也這么改。

  • 更新的sql
Paste_Image.png

因為是更新,所以我們只需要讓數(shù)據(jù)庫更改update_time字段就可以了,create_time不用管。

同理,其他的update也這么改。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容