Spring Boot 集成 MyBatis Generator步骤

Spring boot集成MyBatis Generator的话,生成和数据库有关的文件会方便很多,最近在照着视频的步骤来生成,不过也是遇到好几个坑,所以就记录下来,希望以后大家可以少走一些弯路。
1、https://start.spring.io/生成一个的maven文件,并下载。
在这里插入图片描述
2、导入到eclipse后,update项目,这样就会下载所需要的jar文件
在这里插入图片描述
在这里插入图片描述
3、所需的jar包下载完成之后,修改pom.xml文件,添加如下新的依赖

<!-- 数据源 -->
		<dependency>
		    <groupId>com.alibaba</groupId>
		    <artifactId>druid</artifactId>
		    <version>1.1.0</version>
		</dependency>
		
		<!-- MySQL驱动包 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.35</version>
        </dependency>
        
        <!--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>
	
		<dependency>
			<groupId>org.mybatis.generator</groupId>  
            <artifactId>mybatis-generator-maven-plugin</artifactId>  
            <version>1.3.2</version> 
		</dependency>

4、修改application.properties文件,添加如下配置

####################################################
#
#	mybatis配置
#
####################################################
mybatis.type-aliases-package=com.gzb.SpringBootDemo.po
mybatis.mapper-location=classpath:mapper/*.xml

## 通用mapper设置
mapper.mappers=com.gzb.SpringBootDemo.utils.MyMapper
mapper.not-empty=false
mapper.identity=MYSQL

## 分页插件
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

5、添加对应的package和文件夹,主要是对应步骤四的
mybatis.type-aliases-package和
mybatis.mapper-location配置
如下图:
在这里插入图片描述
6、utils下添加接口类MyMapper,如下图:
在这里插入图片描述
接口内容如下:

package com.gzb.SpringBootDemo.utils;

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

/**
 * 继承自己的MyMapper
 */
public interface MyMapper<T> extends Mapper<T>, MySqlMapper<T> {
    //TODO
    //FIXME 特别注意,该接口不能被扫描到,否则会出错
}

7、项目下添加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="MysqlContext" targetRuntime="MyBatis3Simple" defaultModelType="flat">
		<property name="beginningDelimiter" value=""/>
		<property name="endingDelimiter" value=""/>
		
		<plugin type="tk.mybatis.mapper.generator.MapperPlugin">
			<property name="mappers" value="com.gzb.SpringBootDemo.utils.MyMapper"/>
			
		</plugin>
		
		<jdbcConnection driverClass="com.mysql.jdbc.Driver" 
						connectionURL="jdbc:mysql://数据库所在IP地址:3306/数据库名"
						userId="数据库管理员"
						password="数据库管理员密码">
		</jdbcConnection>
		
		<!-- 生成的po包 -->
		<javaModelGenerator targetPackage="com.gzb.SpringBootDemo.po" targetProject="src/main/java"></javaModelGenerator>
		
		<!-- 生成mapper所在目录 -->
		<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"></sqlMapGenerator>
		
		<!-- 配置mapper对应的java影射 -->
		<javaClientGenerator targetPackage="com.gzb.SpringBootDemo.mapper" targetProject="src/main/java" type="XMLMAPPER"></javaClientGenerator>
		
		<!-- 读取数据库的表 -->
		<table tableName="tb_user"></table>
		
		
	</context>
</generatorConfiguration>
  
 

8、添加测试代码,如下图:
在这里插入图片描述
代码内容如下:

package com.gzb.SpringBootDemo.utils;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback;
import org.springframework.context.annotation.Configuration;

public class GeneratorDisplay {

	public void generator() throws Exception {
		List<String> warnings = new ArrayList<String>();
		boolean overwrite = true;
		
		//获取 逆向工程配置文件
		File configFile = new File("GeneratorConfig.xml");
		
		ConfigurationParser cp = new ConfigurationParser(warnings);
		
		org.mybatis.generator.config.Configuration config = cp.parseConfiguration(configFile);
		
		DefaultShellCallback callback = new DefaultShellCallback(overwrite);
		
		MyBatisGenerator myBatisGenerator = new MyBatisGenerator((org.mybatis.generator.config.Configuration) config, callback, warnings);
		
		myBatisGenerator.generate(null);
	}
	
	
	
	
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try {
			GeneratorDisplay generatorDisplay = new GeneratorDisplay();
			generatorDisplay.generator();
			
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}
	}

}

9、运行代码,就会生成和表有关的文件,如下图:
在这里插入图片描述
10、问题,之前在配置GeneratorConfig.xml的时候,输入错误了,导致报错,报错如下图:
在这里插入图片描述
导致出现如下报错:
在这里插入图片描述
后面重新翻看视频的时候才知道是漏写了s。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值