Mybatis_plus笔记
Mybatis_plus筆記
在使用mybatis_plus的過程中我們可以明顯的感受到他的強(qiáng)大之處。它就像是Mybatis和Jpa的結(jié)合體一樣,它擁有jpa對單表的各種CRUD操作以及強(qiáng)大的條件構(gòu)造器,同時它還具備著mybatis原有的靈活性,實(shí)在是我們的不二之選。
mybatis_plus官方文檔地址:https://mp.baomidou.com/
使用
使用mybatis_plus需要導(dǎo)入的依賴是
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>Latest Version</version>
</dependency>
其他的依賴與在使用mybatis時一致即可,除了將mybatis的依賴更改為這個。
然后是添加注解,和使用mybatis時是相同的方式添加注解。如在啟動類上的@MapperScan(“com.crm.mapper”)一樣。但mybatis-plus在實(shí)體類上有與mybatis不同的地方,mybatis-plus在實(shí)體類有一些注解可以幫助我們便捷的完成實(shí)體類與數(shù)據(jù)庫之間的映射關(guān)系。
一,實(shí)體類注解
最常用到的有三個:
@TableName(value =“table_name”)
當(dāng)數(shù)據(jù)庫名與實(shí)體類名不一致或不符合駝峰命名時,需要在此注解指定表名。
@TableId(value=“t_id”)
指定實(shí)體類的屬性為對應(yīng)的主鍵,有六種主鍵策略:
1,IdType.AUTO //主鍵自增
2,IdType.NONE //默認(rèn)狀態(tài),該類型為未設(shè)置主鍵類型
3,IdType.INPUT // 用戶輸入ID
4, IdType.ID_WORKER //全局唯一ID (idWorker)
5,IdType.UUID //全局唯一ID (UUID)
6,IdType.ID_WORKER_STR //字符串全局唯一ID (idWorker 的字符串表示)
@TableField注解
1,@TableField(value = “”) //用來解決數(shù)據(jù)庫中的字段和實(shí)體類的字段不匹配問題
2,@TableField(exist = false) //用來解決實(shí)體類中有的屬性但是數(shù)據(jù)表中沒有的字段
二,配置日志輸出
作為一個程序員,程序報錯是很正常的事,對吧。而在報錯的時候如果能獲取到比較詳細(xì)的程序所執(zhí)行sql的信息,那對我們的找錯改正是很有幫助的。而mybatis-plus中的日志輸出就可以滿足我們的需要,其輸出的日志信息比mybatis的日志詳細(xì)很多,配置它卻只需要在application中添加一行代碼即可
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
效果圖
三,Mapper和service以及ServiceImpl
1,mapper
在使用mybatis-plus的項(xiàng)目中編寫mapper接口時需要繼承BaseMapper

2,service
service需要繼承IService

3,serviceImpl
serviceImpl需要繼承ServiceImpl<ModuleMapper, Modules>

當(dāng)我們寫好這些注解后在controller中如果想調(diào)用單表的增刪改查的話便可以直接用mapper或者serviceImpl來調(diào)用mybatis-plus封裝好的方法。
四,條件查詢器wrapper
在使用mybatis-plus進(jìn)行多條件查的時候我們需要了解wrapper這個東西,他會將我們的條件進(jìn)行處理后添加在sql語句的后面,不僅僅是mybatis-plus中封裝好的查詢方法中可以用,在我們自定義的方法中也都可以使用。接下來我便介紹一下wrapper。
首先我們需要先聲明wrapper。
wrapper有兩個子類QueryWrapper和UpdateWrapper
一般查詢是使用QueryWrapper,修改是使用UpdateWrapper。不建議直接使用wrapper。聲明wrapper很簡單就和上圖一樣。
使用wrapper
查詢條件是有很多種的比如相等,大于,模糊,,,等等。
那在用wrapper時怎么區(qū)分各種條件呢,很簡單,wrapper有許多個方法分別代表了這些條件。
如eq / /相等

ne //不等

諸如此類的還有很多大家可以直接訪問mybatis-plus的官網(wǎng)來查看
自定義查詢中wrapper的使用
1,用注解

2,用xml

總結(jié)
以上是生活随笔為你收集整理的Mybatis_plus笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【SpringBoot】WebSocke
- 下一篇: java对象生命周期概述复习