springboot植入pagerHelper的超詳細(xì)教程
前面?zhèn)€已經(jīng)講過mybatis的批量更新操作。批量操作還有時(shí)分頁查詢,針對(duì)項(xiàng)目的完善性,來講解一下分頁工具的植入pagerHelper和tk.mybatis使用。其實(shí)官網(wǎng)已經(jīng)有具體代碼,代價(jià)有空可以多多參考官網(wǎng)操作。鏈接地址MyBatis-Spring-Boot
技術(shù)方案maven jar導(dǎo)入查看官方說明引入依賴,如下:
<!--mybatis--><dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version></dependency><!--mapper--><dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <version>1.2.4</version></dependency><!--pagehelper--><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.3</version></dependency>maven plugin配置
引入完jar依賴之后,配置plugin插件,插件時(shí)根據(jù)maven來識(shí)別的,可以直接拷貝官網(wǎng)的配置即可,如下:
<plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.2</version><configuration> <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile> <overwrite>true</overwrite> <verbose>true</verbose></configuration><dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-generator</artifactId> <version>1.0.0</version> </dependency></dependencies> </plugin>配置generatorConfig.xml
根據(jù)自己喜歡,可以定制化配置generatorConfig.xml,下面是我個(gè)人基本配置,更多配置說明,請(qǐng)查看官方說明MyBatis Generator 詳解
<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE generatorConfiguration PUBLIC '-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN' 'http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd'><generatorConfiguration> <properties resource='generator/application-dev.properties'/> <context targetRuntime='MyBatis3Simple' defaultModelType='flat'> <property name='beginningDelimiter' value='`'/> <property name='endingDelimiter' value='`'/> <plugin type='tk.mybatis.mapper.generator.MapperPlugin'> <property name='mappers' value='com.lgh.common.util.MyMapper'/> </plugin> <jdbcConnection driverClass='${spring.datasource.driver-class-name}' connectionURL='${spring.datasource.url}' userId='${spring.datasource.username}' password='${spring.datasource.password}'> </jdbcConnection> <javaModelGenerator targetPackage='com.lgh.model' targetProject='src/main/java'/> <sqlMapGenerator targetPackage='mapper' targetProject='src/main/resources'/> <javaClientGenerator targetPackage='com.lgh.mapper' targetProject='src/main/java' type='XMLMAPPER'/> <!-- 數(shù)據(jù)庫表 以及實(shí)體類命名 --> <!-- <table schema='CL_DEMO' tableName='tb_user' domainObjectName='User'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='tb_role' domainObjectName='Role'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='tb_menu' domainObjectName='Menu'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='tb_resource' domainObjectName='Resource'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='user_role' domainObjectName='UserRole'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='role_menu' domainObjectName='RoleMenu'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='menu_resource' domainObjectName='MenuResource'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='role_resource' domainObjectName='RoleResource'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' /> <table schema='CL_DEMO' tableName='logon' domainObjectName='Logon'enableCountByExample='false' enableDeleteByExample='false'enableSelectByExample='false' enableUpdateByExample='false'selectByExampleQueryId='false' />--> </context></generatorConfiguration>測試樣例

點(diǎn)擊mybatis-generator:generate即可生成對(duì)象和映射文件,具體如上圖
一般分頁個(gè)人喜好建議用jdk8的lambda表達(dá)式,如://對(duì)應(yīng)的lambda用法pageInfo = PageHelper.startPage(1, 10).doSelectPageInfo(() -> userMapper.selectGroupBy());,更多請(qǐng)查看官網(wǎng)分頁使用方式
總結(jié)&反思基本操作對(duì)象,我們不要再手動(dòng)一個(gè)一個(gè)的寫啦,直接用mybatis插件生成?;綾urd不要再自己編寫xml,直接用tk.mysql操作即可。一對(duì)多情況,分頁無法實(shí)現(xiàn)謹(jǐn)慎使用
源碼地址github
到此這篇關(guān)于springboot植入pagerHelper的文章就介紹到這了,更多相關(guān)springboot植入pagerHelper內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 用Spring JMS使異步消息變得簡單2. 一文帶你徹底理解Java序列化和反序列化3. PHP驗(yàn)證碼工具-Securimage4. js實(shí)現(xiàn)碰撞檢測5. 關(guān)于IDEA 2020.3 多窗口視圖丟失的問題6. JS實(shí)現(xiàn)前端動(dòng)態(tài)分頁碼代碼實(shí)例7. javascript實(shí)現(xiàn)貪吃蛇小練習(xí)8. Python 下載Bing壁紙的示例9. Python 制作查詢商品歷史價(jià)格的小工具10. ASP.NET MVC使用jQuery ui的progressbar實(shí)現(xiàn)進(jìn)度條

網(wǎng)公網(wǎng)安備