创建数据库和数据库表
创建数据库
CREATE DATABASE `atcrowdfunding190105` CHARACTER SET utf8
创建管理员数据库表
drop table if exists t_admin;
create table t_admin
(
id int not null auto_increment,
login_acct varchar(255) not null,
user_pswd char(32) not null,
user_name varchar(255) not null,
email varchar(255) not null,
create_time char(19),
primary key (id)
);
基于Maven的MyBatis逆向工程
创建maven工程
0、建议逆向工程从项目本身独立出来。
1、new ---- 》 Maven Projetc----》选择 Create a simple project(skip archetype selection)
2、在Artifact部分中:
- group id:com.atguigu.crowd.funding
- artifact id:atcrowdfunding-reverse
- package:jar
pom.xml配置
<!-- 依赖MyBatis核心包 -->
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</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.15</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
generatorConfig.xml配置
在src/main/resources目录下创建generatorConfig.xml,内容如下:
<!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="atguiguTables" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是;false:否 -->
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--数据库连接的信息:驱动类、连接地址、用户名、密码
注意:8.0.15的driverClass为com.mysql.cj.jdbc.Driver
-->
<jdbcConnection
driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/atcrowdfunding190105?useUnicode=true&characterEncoding=utf-8"
userId="root"
password="123456">
</jdbcConnection>
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL
和 NUMERIC 类型解析为java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- targetProject:生成Entity类的路径 -->
<javaModelGenerator targetProject=".\src\main\java"
targetPackage="com.atguigu.crowd.funding.entity">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- targetProject:XxxMapper.xml映射文件生成的路径 -->
<sqlMapGenerator targetProject=".\src\main\java"
targetPackage="com.atguigu.crowd.funding.mapper">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- targetPackage:Mapper接口生成的位置 -->
<javaClientGenerator type="XMLMAPPER"
targetProject=".\src\main\java"
targetPackage="com.atguigu.crowd.funding.mapper">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 数据库表名字和我们的entity类对应的映射指定 -->
<table tableName="t_admin" domainObjectName="Admin" />
</context>
</generatorConfiguration>
执行逆向生成操作的Maven命令
1、选择pom.xml----》 Run as —》 Maven build … —》将Goal的值设置为:mybatis-generator:generate----》Run
2、然后刷新
3、调整Admin.java:生成无参构造器、有参构造器和toString方法
逆向工程生成的资源各归各位
1、将atcrowdfunding-reverse/src/main/java目录下的com.atguigu.crowd.funding.entity包调整到atcrowdfunding-admin-4-entity模块的/src/main/java下
2、atcrowdfunding-reverse/src/main/java目录下的com.atguigu.crowd.funding.mapper包放到component模块的/src/main/java下【可能会缺少一个org.acache包,暂时不处理】。
3、在atcrowdfunding-admin-1-webui模块的/src/main/resources下创建一个mybatis/mapper目录,然后将com.atguigu.crowd.funding.mapper包的AdminMapper.xml放在atcrowdfunding-admin-1-webui模块的/src/main/resources下