提示:若是不成功必定是项目路径和 数据库配置出问题,本篇基于 MySQL 8.0.13,调试没有问题。java
若是失败,建议使用相同的项目结构,包名,进行重试,博主也是屡次调试,才成功。一些常见问题,看报错提示信息是能够看懂的,加油。mysql
整个项目的源代码,最后,也会给出下载连接。sql
这是根据数据库,生成后的项目结构:数据库
mybatis-geneator 是一款 mybatis 自动代码生成工具,能够经过配置,快速生成 mapper 和 xml 文件。mybatis
(1)在项目的 pom.xml 文件中添加插件配置oracle
详细的 pom.xml 配置:app
<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.7</version> <dependencies> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.7</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.13</version> </dependency> </dependencies> <executions> <execution> <id>mybatis generator</id> <phase>package</phase> <goals> <goal>generate</goal> </goals> <configuration> <!--容许移动生成的文件--> <verbose>true</verbose> <!--容许自动覆盖文件--> <overwrite>true</overwrite> <configurationFile> src/main/resources/generatorConfig.xml </configurationFile> </configuration> </execution> </executions> </plugin>
(2)根据本身配置的文件路径及名称,建立相应 generatorConfig.xml 文件,位置以下图:dom
(3)先手动建立一些目录,在配置的时候回有提示,大大下降出错几率,总体目录结构:maven
以前介绍过屡次命令行建立数据库表了,查看 MySQL - 最经典的 命令行操做数据库 + 表(增删改查实例)函数
此次使用 Navicat for MySQL,若是没有安装请参考:Navicat for MySQL 最新版安装与破解 + 报错解决办法
(1)创建链接,建立数据库:
(2)数据库名,选择编码:
(3)新建表:
(4)填写表信息:
主键:
其余:
表名为 user_info
(5)插入一条信息:
(6)细心的你可能发现了没有 upwd 存密码的字段,咱们这里放在另一张表上,新建表 user_pwd:
(重要!)
(请详细看注释!自行修改本身的配置信息)
修改目录请自行对应,可放大查看:
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:起个名字 --> <!-- targetRuntime:设置生成的文件适用于那个 mybatis 版本 --> <context id="default" targetRuntime="MyBatis3"> <!--jdbc的数据库链接--> <!--这里是以变量的形式定义,具体的值在 application.properties 文件中--> <!--jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC--> <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/miaosha?serverTimezone=UTC" userId="root" password="xiaopengwei"> </jdbcConnection> <!-- targetPackage:生成的实体类所在的包 --> <!-- targetProject:生成的实体类所在的硬盘位置 --> <!-- DataObject 类存放位置 --> <javaModelGenerator targetPackage="com.miaoshapro.dataobject" targetProject=".\src\main\java"> <!-- 是否容许子包 --> <property name="enableSubPackages" value="false" /> <!-- 是否对modal添加构造函数 --> <property name="constructorBased" value="true" /> <!-- 是否清理从数据库中查询出的字符串左右两边的空白字符 --> <property name="trimStrings" value="true" /> <!-- 创建modal对象是否不可改变 即生成的modal对象不会有setter方法,只有构造方法 --> <property name="immutable" value="false" /> </javaModelGenerator> <!-- targetPackage 和 targetProject:生成的 mapper 文件的包和位置 --> <sqlMapGenerator targetPackage="mapping" targetProject=".\src\main\resources"> <!-- 针对数据库的一个配置,是否把 schema 做为字包名 --> <property name="enableSubPackages" value="false" /> </sqlMapGenerator> <!-- targetPackage 和 targetProject:生成的 interface 文件的包和位置 --> <javaClientGenerator type="XMLMAPPER" targetPackage="com.miaoshapro.dao" targetProject=".\src\main\java"> <!-- 针对 oracle 数据库的一个配置,是否把 schema 做为字包名 --> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--生成对应表及类名--> <table tableName="user_info" domainObjectName="UserDO"> </table> <table tableName="user_pwd" domainObjectName="UserPwdDO"> </table> </context> </generatorConfiguration>
(1)打开配置:
(2)点击 +,选择 Maven:
(3)输入信息,命令:
(4)选中刚才建立的名称,点击执行:
(1):
(2):
(3):
(4):