Spring Boot 整合 TKMybatis 二次簡(jiǎn)化持久層代碼的實(shí)現(xiàn)
經(jīng)常用 MyBatis 的的都知道,使用這個(gè)框架存在一個(gè)非常不友善的問題就是,就是每操作一個(gè)單表就需要自己手寫一個(gè) xml 文件,雖然說可以用工具生成 xml 和實(shí)體類可以解決這個(gè)問題,但是二次開發(fā)的時(shí)候?qū)δ硞€(gè)表字段進(jìn)行修改的時(shí)候,生成 xml 文件就不現(xiàn)實(shí)啦。最近發(fā)現(xiàn) tk.mybatis 就非常好的解決了這個(gè)問題。tk.mybatis 整合了 MyBatis 框架,在其基礎(chǔ)上提供了很多工具,封裝了常用的增刪改查 SQL 語句,可以讓我們的開發(fā)效率更高。在這里和大家分享一下。
引入依賴在 pom.xml 中引入 mapper-spring-boot-starter 依賴
<!-- druid-spring-boot-starter --><dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.10</version></dependency><!-- 數(shù)據(jù)庫連接依賴 --><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.40</version> <scope>runtime</scope></dependency><!-- mapper-spring-boot-starter --><dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <version>2.0.2</version></dependency>相關(guān)配置
在 application.yml 中添加相關(guān)配置
spring: datasource: druid: url: jdbc:mysql://127.0.0.1:3306/test?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: 123456 initial-size: 1 min-idle: 1 max-active: 20 test-on-borrow: true driver-class-name: com.mysql.jdbc.Driver # MySQL 8.x: com.mysql.cj.jdbc.Driver mybatis: type-aliases-package: # 實(shí)體類的存放路徑,如:com.antoniopeng.hello.spring.boot.entity mapper-locations: classpath:mapper/*.xml # mapper.xml 文件存放路徑,這里存放在配置文件目錄 resources 下 logging: level: com.antoniopeng.hello.springboot.mybatis: debug # 配置監(jiān)聽日志
在 Application 入口類中使用 tk.mybatis.spring.annotation 包下的 @MapperScan 注解指定 Mapper 接口的掃描路徑
import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import tk.mybatis.spring.annotation.MapperScan;@MapperScan(value = 'com.antoniopeng.springboot.mybatis.mapper')@SpringBootApplicationpublic class HelloSpringBootMybatisApplication { public static void main(String[] args) { SpringApplication.run(HelloSpringBootMybatisApplication.class, args); }}整合 PageHelper 分頁插件
引入依賴
在 pom.xml 中引入 pagehelper-spring-boot-starter 依賴
<!-- pagehelper-spring-boot-starter --><dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version></dependency>
分頁查詢示例
@RunWith(SpringRunner.class)@SpringBootTest(classes = Application.class)@Transactional@Rollbackpublic class MyBatisTests { @Autowired UserService userService; /** * 測(cè)試分頁插件 */ @Test public void testPageHelper() { Example example = new Example(User.class); // 查詢條件 example.createCriteria().andEqualTo('userId', '1') // 分頁參數(shù) PageHelper.startPage(1, 10, 'create_time desc'); // 獲取分頁列表數(shù)據(jù) List<User> userList = userService.selectByExample(example); PageInfo pageInfo = new PageInfo(userList); // 獲取列表總數(shù) int userCount = (int) pageInfo.getTotal(); }}
到此這篇關(guān)于Spring Boot 整合 TKMybatis 二次簡(jiǎn)化持久層代碼的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Spring Boot 整合 TKMybatis 內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 如何用 Python 制作一個(gè)迷宮游戲2. 讓chatgpt將html中的圖片轉(zhuǎn)為base64方法示例3. idea設(shè)置自動(dòng)導(dǎo)入依賴的方法步驟4. 如何使用Vue的思想封裝一個(gè)Storage5. Java SE 6中JDBC 4.0的增強(qiáng)特性6. 爬取今日頭條Ajax請(qǐng)求7. AspNetCore&MassTransit Courier實(shí)現(xiàn)分布式事務(wù)的詳細(xì)過程8. python實(shí)現(xiàn)股票歷史數(shù)據(jù)可視化分析案例9. PHP設(shè)計(jì)模式中的命令模式10. Python的Tqdm模塊實(shí)現(xiàn)進(jìn)度條配置
