天天看點

SpringBoot整合Mybatis進階用法概要SpringBoot整合Druid使用Mybatis的Maven插件生成代碼

概要

這篇文章主要講述的是SpringBoot整合Mybatis時的幾個快速開發小技巧,能讓我們在開發項目時達到盡量少寫SQL語句或最好不寫SQL語句的快速開發效果

SpringBoot整合Druid

SpringBoot整合tk.mybatis(封裝了Mybatis)

使用Mybatis的Maven插件生成代碼

SpringBoot整合PageHelper(快速分頁查尋)

SpringBoot整合Druid

概述

Druid 是阿裡巴巴開源平台上的一個項目,整個項目由資料庫連接配接池、插件架構和 SQL 解析器組成。該項目主要是為了擴充 JDBC 的一些限制,可以讓程式員實作一些特殊的需求,比如向密鑰服務請求憑證、統計 SQL 資訊、SQL 性能收集、SQL 注入檢查、SQL 翻譯等,程式員可以通過定制來實作自己需要的功能。

Druid 是目前最好的資料庫連接配接池,在功能、性能、擴充性方面,都超過其他資料庫連接配接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid 已經在阿裡巴巴部署了超過 600 個應用,經過多年生産環境大規模部署的嚴苛考驗。Druid 是阿裡巴巴開發的号稱為監控而生的資料庫連接配接池!

引入依賴

druid-spring-boot-starter

引入資料庫連接配接依賴

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
           

配置 application.yml

pom.xml

建立一個通用的父級接口

主要作用是讓 DAO 層的接口繼承該接口,以達到使用 tk.mybatis 的目的

import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;

/**
 * 自己的 Mapper
 * 特别注意,該接口不能被掃描到,否則會出錯
 * <p>Title: MyMapper</p>
 */
public interface MyMapper<T> extends Mapper<T>, MySqlMapper<T> {
}
           

這邊需要注意的是Mapper不是mybatis中的mapper(org.apache.ibatis.annotations.Mapper),而是tk.mybatis.mapper.common.Mapper中的。

使用Mybatis的Maven插件生成代碼

概述

我們無需手動編寫 實體類、DAO、XML 配置檔案,隻需要使用 MyBatis 提供的一個Maven插件就可以自動生成所需的各種檔案便能夠滿足基本的業務需求,如果業務比較複雜隻需要修改相關檔案即可。

配置插件

mybatis-generator-maven-plugin

  • configurationFile:自動生成所需的配置檔案路徑

自動生成的配置

generatorConfig.xml

配置資料源

jdbc.properties

一切準備工作完成後,點選最右邊的

pom.xml