欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mybatis中的PageHelper的執(zhí)行流程分析

 更新時(shí)間:2022年02月28日 11:20:57   作者:樹(shù)_tree  
這篇文章主要介紹了Mybatis的PageHelper執(zhí)行流程,本文給大家介紹介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

PageHelper Mybatis的執(zhí)行流程

  • mybatis中首先要在配置文件中配置一些東西
  • 然后根據(jù)這些配置去創(chuàng)建一個(gè)會(huì)話工廠
  • 再根據(jù)會(huì)話工廠創(chuàng)建會(huì)話,會(huì)話發(fā)出操作數(shù)據(jù)庫(kù)的sql語(yǔ)句
  • 然后通過(guò)執(zhí)行器操作數(shù)據(jù)
  • 再使用mappedStatement對(duì)數(shù)據(jù)進(jìn)行封裝

這就是整個(gè)mybatis框架的執(zhí)行情況。

插件的執(zhí)行

它主要作用在Executor執(zhí)行器與mappedeStatement之間

也就是說(shuō)mybatis可以在插件中獲得要執(zhí)行的sql語(yǔ)句

在sql語(yǔ)句中添加limit語(yǔ)句,然后再去對(duì)sql進(jìn)行封裝,從而可以實(shí)現(xiàn)分頁(yè)處理。

SpringBoot操作PageHelper

引入依賴(lài)

 <!--分頁(yè)插件 pagehelper -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <!-- 特別注意版本問(wèn)題 -->
            <version>1.2.13</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.18</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.3.1</version>
        </dependency>

yaml配置

#整合數(shù)據(jù)源
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: ok
    url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
#Mybatis-Plus的配置
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 配置在控制臺(tái)打印 sql語(yǔ)句
  # 配置自定義sql語(yǔ)句的 *mapper.xml 文件位置
  mapper-locations: classpath:**/mapper/**.xml
pagehelper:
  helperDialect: mysql
  reasonable: true
  supportMethodsArguments: true
  params: count=countSql

項(xiàng)目示例結(jié)構(gòu)

CategoryDao

因?yàn)槭褂昧薓ybatisPlus所以有些方法可以不去實(shí)現(xiàn),通過(guò)Plus自己編寫(xiě)

@Mapper
public interface CategoryDao extends BaseMapper<Category> {
}

CateService接口

import cn.pojo.Category;
import java.util.*;
public interface CateService {
    public List<Category> pageSelect(int page,int col);
}

CateServiceImple實(shí)現(xiàn)

import javax.annotation.Resource;
import java.util.List;
@Service
public class CateServiceImple implements CateService {
    @Resource
    CategoryDao categoryDao;
    @Override
    public List<Category> pageSelect(int page, int col) {
//        使用分頁(yè)表明,從第幾頁(yè)開(kāi)始,一頁(yè)多少條數(shù)據(jù)
        PageHelper.startPage(page,col);
		
//        使用Plus進(jìn)行查詢(xún)所有,因?yàn)镻ageHelper插件會(huì)進(jìn)行sql的limit的拼接
        List<Category> categories = categoryDao.selectList(null);

        return categories;
    }
}

核心代碼

//        使用分頁(yè)表明,從第幾頁(yè)開(kāi)始,一頁(yè)多少條數(shù)據(jù)
        PageHelper.startPage(page,col);
//        使用Plus進(jìn)行查詢(xún)所有,因?yàn)镻ageHelper插件會(huì)進(jìn)行sql的limit的拼接
        List<Category> categories = categoryDao.selectList(null);

查看結(jié)果

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

相關(guān)文章

  • 一文了解jJava中的加密與安全

    一文了解jJava中的加密與安全

    常見(jiàn)的編碼有ASCII碼、Unicode編碼。最簡(jiǎn)單的編碼是直接給每個(gè)字符指定一個(gè)若干字節(jié)表示的整數(shù),復(fù)雜一點(diǎn)的編碼就需要根據(jù)已有的編碼推算出來(lái)。本文將為大家詳細(xì)講講Java重點(diǎn)加密與安全,感興趣的可以了解一下
    2022-07-07
  • 基于@PathVariable注解的用法說(shuō)明

    基于@PathVariable注解的用法說(shuō)明

    這篇文章主要介紹了基于@PathVariable注解的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-02-02
  • SpringBoot整合Thymeleaf的方法

    SpringBoot整合Thymeleaf的方法

    這篇文章主要介紹了SpringBoot整合Thymeleaf的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下,希望能夠幫助到你
    2021-07-07
  • Spring?boot2.0?實(shí)現(xiàn)日志集成的方法(3)

    Spring?boot2.0?實(shí)現(xiàn)日志集成的方法(3)

    這篇文章主要介紹了Spring?boot2.0?實(shí)現(xiàn)日志集成的方法,基于上一篇將日志信息根據(jù)類(lèi)別輸出到不同的文件中,這篇文章將通過(guò)日志來(lái)監(jiān)控用戶(hù)的操作行為、請(qǐng)求的耗時(shí)情況,針對(duì)耗時(shí)久的請(qǐng)求進(jìn)行性能分析,提升系統(tǒng)性能,需要的小伙伴可以參考一下
    2022-04-04
  • Java讀取并下載網(wǎng)絡(luò)文件的方法

    Java讀取并下載網(wǎng)絡(luò)文件的方法

    這篇文章主要為大家詳細(xì)介紹了Java讀取并下載網(wǎng)絡(luò)文件的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • SparkSQL使用IDEA快速入門(mén)DataFrame與DataSet的完美教程

    SparkSQL使用IDEA快速入門(mén)DataFrame與DataSet的完美教程

    本文給大家介紹使用idea開(kāi)發(fā)Spark SQL 的詳細(xì)過(guò)程,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-08-08
  • SpringBoot JWT接口驗(yàn)證實(shí)現(xiàn)流程詳細(xì)介紹

    SpringBoot JWT接口驗(yàn)證實(shí)現(xiàn)流程詳細(xì)介紹

    這篇文章主要介紹了SpringBoot+JWT實(shí)現(xiàn)接口驗(yàn)證,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-09-09
  • Idea如何配置Maven才能優(yōu)先從本地倉(cāng)庫(kù)獲取依賴(lài)(親測(cè)方法有效)

    Idea如何配置Maven才能優(yōu)先從本地倉(cāng)庫(kù)獲取依賴(lài)(親測(cè)方法有效)

    對(duì)于Idea怎么配置Maven才能優(yōu)先從本地倉(cāng)庫(kù)獲取依賴(lài),網(wǎng)上說(shuō)法有很多種,都不太靠譜,最終都沒(méi)有效果,最好的解決方法是通過(guò)修改maven配置文件settings.xml,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2023-10-10
  • Java子類(lèi)實(shí)例化總是默認(rèn)調(diào)用父類(lèi)的無(wú)參構(gòu)造操作

    Java子類(lèi)實(shí)例化總是默認(rèn)調(diào)用父類(lèi)的無(wú)參構(gòu)造操作

    這篇文章主要介紹了Java子類(lèi)實(shí)例化總是默認(rèn)調(diào)用父類(lèi)的無(wú)參構(gòu)造操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • 詳解springboot采用多數(shù)據(jù)源對(duì)JdbcTemplate配置的方法

    詳解springboot采用多數(shù)據(jù)源對(duì)JdbcTemplate配置的方法

    在本篇文章中我們給大家詳細(xì)分享了springboot采用多數(shù)據(jù)源對(duì)JdbcTemplate配置的方法,有需要的朋友們可以學(xué)習(xí)參考下。
    2018-10-10

最新評(píng)論