五分钟带你走入MP
一、MyBatis-Plus簡介
1.1MyBatis-Plus是什么?
MyBatis-Plus(簡稱 MP)是一個(gè)?MyBatis?的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡化開發(fā)、提高效率而生。
快速開發(fā)特別方法,內(nèi)部封裝了常用的CRUD操作,簡單好用。
1.2為什么使用MyBatis-Plus?
1.3 核心原理是什么?
通過掃描對(duì)應(yīng)的實(shí)體類,解析出對(duì)應(yīng)的數(shù)據(jù)庫表的字段名稱,根據(jù)默認(rèn)的方法,生成對(duì)應(yīng)的sql語句(解析映射類,對(duì)應(yīng)的注解),代理模式生成對(duì)應(yīng)dao層接口的實(shí)現(xiàn)類。
?
二、MyBatis-plus初體驗(yàn)
2.1 創(chuàng)建SpringBoot項(xiàng)目
創(chuàng)建基于SpringBoot的項(xiàng)目,并且完成相關(guān)依賴,數(shù)據(jù)庫、數(shù)據(jù)庫連接池、MyBatis-Plus、Spring、SpringMVC。
2.2 準(zhǔn)備數(shù)據(jù)庫
create database db_mp;
use db_mp;
create table work(id int primary key AUTO_INCREMENT,name varchar(20),address varchar(30),money int,createtime datetime);
2.3 使用代碼生成器
使用MP自帶的代碼生成器,完成對(duì)應(yīng)代碼的生成。
代碼生成器項(xiàng)目鏈接:
?
2.4 拷貝對(duì)應(yīng)的代碼
按照傳統(tǒng)的三層模式,完成對(duì)應(yīng)的代碼
?
2.5 配置
開關(guān)類上需要使用注解@MapperScan進(jìn)行掃描dao層接口
配置文件中,需要設(shè)置數(shù)據(jù)庫相關(guān)的配置
在需要在配置中,設(shè)置mapper文件的路徑
2.6 啟動(dòng)
啟動(dòng)項(xiàng)目,在瀏覽器中訪問項(xiàng)目。
2.7 測試
對(duì)寫好的CRUD接口進(jìn)行測試。
三、MyBatis-Plus熱門操作
3.1 分頁
內(nèi)部使用了IPage<T>接口,我們只需要?jiǎng)?chuàng)建Page對(duì)象,并且設(shè)置當(dāng)前的頁碼和每頁顯示的數(shù)量就可以了。
//分頁查詢@ApiOperation(value = "分頁查詢")@GetMapping("work/page.do")public List<Work> page(int page,int limit){Page<Work> page1=new Page<>(page,limit);return workService.page(page1).getRecords();}?
3.2 條件查詢
我們?cè)陂_發(fā)中難免要使用動(dòng)態(tài)條件查詢,而Mybatis-Plus也是封裝好了,查詢接口為Wrapper<T>,而我們?cè)谑褂玫臅r(shí)候,可以創(chuàng)建QueryWrapper<T>對(duì)象,實(shí)現(xiàn)動(dòng)態(tài)查詢的拼接。 //動(dòng)態(tài)條件查詢@ApiOperation(value = "動(dòng)態(tài)查詢")@GetMapping("work/query.do")public List<Work> query(String name){QueryWrapper<Work> queryWrapper=new QueryWrapper<>();queryWrapper.eq("name",name);return workService.list(queryWrapper);}?
?
?
?
?
?
源碼地址:https://github.com/xingpenghui/Mybatisplus_Sys.git
?
轉(zhuǎn)載于:https://www.cnblogs.com/qfchen/p/10637593.html
總結(jié)
- 上一篇: 【sql:练习题3】查询在 SC 表存在
- 下一篇: drf 解析器的配置和使用