一. 创建数据库表
创建表t_user
CREATE TABLE `studymybatis`.`t_user` (
`user_id` INT NOT NULL AUTO_INCREMENT,
`user_name` VARCHAR(45) UNIQUE,
`user_password` VARCHAR(45),
`user_age` INT,
`user_sex` VARCHAR(45),
PRIMARY KEY (`user_id`))
二. 创建模块
1. 添加依赖
<dependencies>
<!-- Mybatis核心 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.8</version>
</dependency>
<!-- MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version> <!-- 可与自己电脑的mysql版本一致 -->
</dependency>
<!-- junit测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- 分页 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
<!-- 控制Maven在构建过程中相关配置 -->
<build>
<!-- 构建过程中用到的插件 -->
<plugins>
<!-- 具体插件,逆向工程的操作是以构建过程中插件形式出现的 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.0</version>
<!-- 插件的依赖 -->
<dependencies>
<!-- 逆向工程的核心依赖 -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>
<!-- 数据库连接池 -->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.2</version>
</dependency>
<!-- MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
2. 创建MyBatis的核心配置文件
①在resources目录下创建jdbc.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/studymybatis
jdbc.username=root
jdbc.password=123456
②在resources目录下创建MyBatis核心配置文件mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<properties resource="jdbc.properties"/>
<!--设置别名,以包为单位设置别名,这样不管该包下有多少个JavaBean,其别名都为其自身的类名-->
<typeAliases>
<package name=""/> <!-- name的值为实体对象类所在的包-->
</typeAliases>
<!--设置连接数据库的环境-->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<!--引入映射文件-->
<!-- 由于mapper下可以有多个映射文件,且映射文件名与mapper接口名一致,可以直接写包名,一次引入所有映射文件 -->
<mappers>
<package name=""/>
</mappers>
</configuration>
3. 创建逆向工程的配置文件
在resources目录下创建逆向工程的配置文件,文件名必须是: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>
<!--
targetRuntime: 生成的逆向工程的版本
MyBatis3Simple: 生成基本的CRUD(清新简洁版)
MyBatis3: 生成带条件的CRUD(奢华尊享版)
-->
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!-- 数据库的连接信息 -->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/studymybatis"
userId="root"
password="123456">
</jdbcConnection>
<!-- 使用默认,不用修改-->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- javaBean的生成策略-->
<javaModelGenerator targetPackage="com.mybatis.pojo" targetProject=".\src\main\java">
<property name="enableSubPackages" value="false" /> <!-- 是否让schema作为包的后缀 -->
<property name="trimStrings" value="true" /> <!-- 从数据库返回的值被清理前后的空格 -->
</javaModelGenerator>
<!-- 映射文件的生成策略 -->
<sqlMapGenerator targetPackage="com.mybatis.mapper" targetProject=".\src\main\resources">
<property name="enableSubPackages" value="false" /> <!-- 是否让schema作为包的后缀 -->
</sqlMapGenerator>
<!-- Mapper接口的生成策略,type=XMLMAPPER 采用XML方式进行映射配置 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.mybatis.mapper" targetProject=".\src\main\java">
<property name="enableSubPackages" value="false" /> <!-- 是否让schema作为包的后缀 -->
</javaClientGenerator>
<!-- 逆向工程操作的表 -->
<!-- tableName指定数据库表,domainObjectName指定生成出来的实体类的类名 -->
<table tableName="t_user" domainObjectName="User"/>
</context>
</generatorConfiguration>
4. 生成逆向工程
双击下面的逆向工程生成器
生成如下目录: