[Spring Boot]06 Spring Boot接入mybatis通用mapper插件自動生成器

前言

演示項目代碼爲: [Spring Boot]04 使用IDEA快速搭建多模塊項目

一、引入依賴

引入通用Mapper和Mapper插件依賴:

        <!-- Mapper -->
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-spring-boot-starter</artifactId>
            <version>2.1.5</version>
        </dependency>
        <!-- 通用Mapper插件 -->
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-generator</artifactId>
            <version>1.1.5</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.6</version>
        </dependency>

在這裏插入圖片描述

二、插件配置

Maven插件配置mybatis generator 自動生成器:

<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.6</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>8.0.19</version>
					</dependency>
					<dependency>
						<groupId>tk.mybatis</groupId>
						<artifactId>mapper</artifactId>
						<version>4.0.0</version>
					</dependency>
				</dependencies>
</plugin>

在這裏插入圖片描述

三、配置文件

配置文件目錄:${basedir}/src/main/resources/generator/generatorConfig.xml
在配置文件目錄創建generatorConfig.xml文件,文件內容如下:

<?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>
	<context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
	
		<property name="javaFileEncoding" value="UTF-8"/>
	
		<plugin type="tk.mybatis.mapper.generator.MapperPlugin">
            <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
            <property name="caseSensitive" value="true"/>
            <property name="forceAnnotation" value="true"/>
            <property name="beginningDelimiter" value="`"/>
            <property name="endingDelimiter" value="`"/>
            <property name="swagger" value="true"/>
        </plugin>
	
		<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
			connectionURL="jdbc:mysql://.../shopping"
			userId=""
			password="" />
			
		<javaModelGenerator targetPackage="com.shopping.bi.model"
			targetProject="src/main/java" />
			
		<sqlMapGenerator targetPackage="com.shopping.bi.mapper"
			targetProject="src/main/resources" />
			
		<javaClientGenerator targetPackage="com.shopping.bi.mapper"
			targetProject="src/main/java" type="XMLMAPPER" />
			
		<table schema="shopping" tableName="tbl_admin" domainObjectName="AdminEntity" mapperName="AdminMapper">
			<generatedKey column="id" sqlStatement="JDBC" identity="true"/>
		</table>
		
	</context>
</generatorConfiguration>

此處爲數據庫連接信息,shopping爲數據庫名:

<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
			connectionURL="jdbc:mysql://.../shopping"
			userId=""
			password="" />

此處爲要自動生成的表,數據庫名:shopping,表名:tbl_admin

	<table schema="shopping" tableName="tbl_admin" domainObjectName="AdminEntity" mapperName="AdminMapper">
			<generatedKey column="id" sqlStatement="JDBC" identity="true"/>
	</table>

四、生成代碼

當前目錄結構:
在這裏插入圖片描述
1、在com.shopping.bi文件夾下面創建4個文件夾:bo(業務對象)、mapper(自動生成)、model(自動生成)、service(服務)。
在這裏插入圖片描述

2、去數據庫(shopping)創建表:tbl_admin。
建表SQL語句:

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for tbl_admin
-- ----------------------------
DROP TABLE IF EXISTS `tbl_admin`;
CREATE TABLE `tbl_admin` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '管理員id',
  `account` varchar(45) CHARACTER SET utf8mb4 NOT NULL COMMENT '管理員帳號',
  `name` varchar(45) CHARACTER SET utf8mb4 DEFAULT '' COMMENT '管理員名字',
  `mobile` bigint(20) DEFAULT NULL COMMENT '管理員手機',
  `loginpwd` varchar(128) CHARACTER SET utf8mb4 NOT NULL DEFAULT '' COMMENT '登錄密碼',
  `logintoken` varchar(128) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '鑑權token',
  `roleid` bigint(20) DEFAULT NULL COMMENT '角色id',
  `loginip` varchar(45) CHARACTER SET utf8mb4 DEFAULT NULL COMMENT '登錄ip',
  `lastlogintime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '最後登錄時間',
  `dept` varchar(45) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '部門',
  `loginnum` int(11) NOT NULL DEFAULT '0' COMMENT '登錄次數',
  `state` tinyint(4) NOT NULL DEFAULT '1' COMMENT '狀態 0刪除 1有效',
  `createtime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間',
  `modifytime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='後臺管理員表';

SET FOREIGN_KEY_CHECKS = 1;

在這裏插入圖片描述
3、生成代碼
在IDEA右側點擊Maven,shopping-bi裏面找到mybatis-generator插件,雙擊mybatis-generator自動生成代碼。
在這裏插入圖片描述
如果報錯:Could not find artifact com.shopping:shopping-server:pom:0.0.1-SNAPSHOT
在這裏插入圖片描述
解決方法:去除relativePath
在這裏插入圖片描述
生成代碼後的目錄:
在這裏插入圖片描述
4、補充bo(業務對象)、service(服務)裏面的代碼

在這裏插入圖片描述
OK了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章