亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Mybatis-plus中IService接口的基本使用步驟

 更新時(shí)間:2023年06月01日 09:59:39   作者:白貓與巧克力  
Mybatis-plus是一個(gè)Mybatis的增強(qiáng)工具,它提供了很多便捷的方法來(lái)簡(jiǎn)化開發(fā),IService是Mybatis-plus提供的通用service接口,封裝了常用的數(shù)據(jù)庫(kù)操作方法,包括增刪改查等,下面這篇文章主要給大家介紹了關(guān)于Mybatis-plus中IService接口的基本使用步驟,需要的朋友可以參考下

前言

Mybatis-plus的IService接口:IService接口解釋,我們可以看到IService接口就是有一大堆方法接口。

IService的使用:

IService的使用需要另外兩個(gè)接口的配合:baseMapper和ServiceImpl

第一步:實(shí)現(xiàn)basemapper接口

public interface AdminMapper extends BaseMapper<Admin> {
}

第二步:編寫service類

public interface AdminService extends IService<Admin> {
}

第三步:編寫serviceImpl,ServiceImpl里面是各種的方法實(shí)現(xiàn)

好奇的可以點(diǎn)進(jìn)源碼看下,兩個(gè)泛型需要注意的,第一個(gè)是繼承basemapper的(AdminMapper),第二個(gè)是實(shí)體類(Admin)。

public class AdminServiceImpl extends ServiceImpl<AdminMapper,Admin> 
    						  implements AdminService {}
//查看源碼后發(fā)現(xiàn)ServiceImpl類使用到了BaseMapper接口T和實(shí)現(xiàn)類M,并實(shí)現(xiàn)了IService接口
public class ServiceImpl<M extends BaseMapper<T>, T> implements IService<T> {...}

第四步:在controller層,我們可以參考IService接口解釋或者M(jìn)ybatis-plus官網(wǎng)的方法解釋來(lái)調(diào)用。

@Autowired
    AdminService adminService;
	void test11(){
		// adminService中有很多方法
        Admin admin = adminService.getById(13);
    }

綜合來(lái)看,比較合理的解釋是:

1、從分層角度來(lái)解釋,BaseMapper是DAO層的CRUD封裝,而IService是業(yè)務(wù)業(yè)務(wù)邏輯層的CRUD封裝,所以多了批量增、刪、改的操作封裝,這也比較符合官方指南中的闡述;

2、IService是對(duì)BaseMapper的擴(kuò)展,從BaseMapper、IService、ServiceImpl三者的類關(guān)系以及源碼可以看出;

此外,個(gè)人認(rèn)為應(yīng)該還有一個(gè)原因,就是IService和BaseMapper提供的是兩種實(shí)現(xiàn)方式:

如果繼承BaseMapper,則不需要去實(shí)現(xiàn)其內(nèi)部方法,依靠mybatis的動(dòng)態(tài)代理即可實(shí)現(xiàn)CRUD操作;

而如果自定義IBaseService去繼承IService,則需要去實(shí)現(xiàn)IService中的方法;

ServiceImpl實(shí)現(xiàn)了IService接口

關(guān)系圖

總結(jié) 

到此這篇關(guān)于Mybatis-plus中IService接口的基本使用步驟的文章就介紹到這了,更多相關(guān)Mybatis-plus中IService接口使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • btrace定位生產(chǎn)故障的方法示例

    btrace定位生產(chǎn)故障的方法示例

    這篇文章主要介紹了btrace定位生產(chǎn)故障的方法示例,文中通過(guò)示例代碼介紹的很詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-02-02
  • java序列化的種類和使用場(chǎng)景詳解

    java序列化的種類和使用場(chǎng)景詳解

    本文詳細(xì)介紹了序列化的概念、Java內(nèi)置序列化、自定義序列化、第三方序列化框架(如Kryo、Protobuf)以及在分布式系統(tǒng)和RPC框架中的應(yīng)用,通過(guò)比較不同序列化方式的優(yōu)缺點(diǎn),指導(dǎo)開發(fā)者選擇合適的序列化方案,以確保系統(tǒng)的性能、安全性和可維護(hù)性
    2025-01-01
  • java高級(jí)用法之JNA中的回調(diào)問(wèn)題

    java高級(jí)用法之JNA中的回調(diào)問(wèn)題

    這篇文章主要介紹了java高級(jí)用法之:JNA中的回調(diào),為了方便和native方法進(jìn)行交互,JNA中同樣提供了Callback用來(lái)進(jìn)行回調(diào),JNA中回調(diào)的本質(zhì)是一個(gè)指向native函數(shù)的指針,通過(guò)這個(gè)指針可以調(diào)用native函數(shù)中的方法,一起來(lái)看看吧
    2022-05-05
  • Java中基于Shiro,JWT實(shí)現(xiàn)微信小程序登錄完整例子及實(shí)現(xiàn)過(guò)程

    Java中基于Shiro,JWT實(shí)現(xiàn)微信小程序登錄完整例子及實(shí)現(xiàn)過(guò)程

    這篇文章主要介紹了Java中基于Shiro,JWT實(shí)現(xiàn)微信小程序登錄完整例子 ,實(shí)現(xiàn)了小程序的自定義登陸,將自定義登陸態(tài)token返回給小程序作為登陸憑證。需要的朋友可以參考下
    2018-11-11
  • 關(guān)于MyBatis通用Mapper@Table注解使用的注意點(diǎn)

    關(guān)于MyBatis通用Mapper@Table注解使用的注意點(diǎn)

    這篇文章主要介紹了關(guān)于MyBatis通用Mapper@Table注解使用的注意點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java操作文件輸出為字符串以及字符串輸出為文件的方法

    Java操作文件輸出為字符串以及字符串輸出為文件的方法

    今天小編就為大家分享一篇Java操作文件輸出為字符串以及字符串輸出為文件的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • maven依賴關(guān)系中的<scope>provided</scope>使用詳解

    maven依賴關(guān)系中的<scope>provided</scope>使用詳解

    這篇文章主要介紹了maven依賴關(guān)系中的<scope>provided</scope>使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Java代碼的三根頂梁柱:循環(huán)結(jié)構(gòu)

    Java代碼的三根頂梁柱:循環(huán)結(jié)構(gòu)

    這篇文章主要介紹了JAVA 循環(huán)結(jié)構(gòu)的相關(guān)資料,文中講解的非常細(xì)致,示例代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2021-08-08
  • springboot如何接收get和post請(qǐng)求參數(shù)

    springboot如何接收get和post請(qǐng)求參數(shù)

    這篇文章主要介紹了springboot如何接收get和post請(qǐng)求參數(shù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • JAVA十大排序算法之計(jì)數(shù)排序詳解

    JAVA十大排序算法之計(jì)數(shù)排序詳解

    這篇文章主要介紹了java中的計(jì)數(shù)排序,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08

最新評(píng)論