1、pom文件中导入依赖

首先需要引入mysql依赖与mybatis依赖,本篇教程用的是SpringBoot项目,如果非SprinigBoot项目,导入原始的mybatis依赖即可。

<!--mysql依赖与mybatis依赖-->
<dependencies>
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
    </dependency>

    <!--mysql-connector-java-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.47</version>
    </dependency>
</dependencies>

<!--在此处配置逆向工程插件-->
<build>
    <plugins>
        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.7</version>
            <configuration>
                <!--配置文件路径-->
                <configurationFile>
                    src/main/resources/generatorConfig.xml
                </configurationFile>
                <!--允许移动生成的文件-->
                <verbose>true</verbose>
                <!--允许覆盖生成的文件-->
                <overwrite>true</overwrite>
            </configuration>
        </plugin>
    </plugins>
</build>

2、创建逆向工程配置文件,该配置文件的路劲需要配置到pom文件的逆向工程插件处

图中红框标出来的为逆向工程配置文件,带有详细注释;config文件夹下的文件存了数据库的连接属性 

generator.properties 配置文件内容:

mysql.driver.local=D:/mavenRepository/mysql/mysql-connector-java/5.1.47/mysql-connector-java-5.1.47.jar
driver.class=com.mysql.jdbc.Driver
url=jdbc:mysql://47.92.252.197:3306/eduresnet
user=root
password=123456

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>
    <!--导入属性配置-->
    <properties resource="config/generator.properties"/>
    <!-- 本地硬盘数据库驱动包的位置 注意该驱动版本应与pom文件使用的版本一致 -->
    <classPathEntry location="${mysql.driver.local}"/>
    <context id="mysqlgenerator" targetRuntime="MyBatis3" defaultModelType="flat">
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
        <commentGenerator>
            <!--是否取消生成日期 true为是  -->
            <property name="suppressDate" value="true" />
            <!--是否取消注销 true为是  -->
            <property name="suppressAllComments" value="false" />
        </commentGenerator>
        <!-- 此处配置数据库连接属性 mysql或oracle都可,oracle则把依赖和本地驱动换成oracle -->
        <jdbcConnection
                driverClass="${driver.class}"
                connectionURL="${url}"
                userId="${user}"
                password="${password}">
        </jdbcConnection>

        <!-- 类型转换 -->
        <javaTypeResolver>
            <!-- 是否使用BigDecimal,false可自动转化以下类型(Integer,Long等)-->
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <!-- 生成实体类的位置 -->
        <javaModelGenerator
                targetPackage="com.wangxs.springcloud.entity"
                targetProject="src/main/java">
            <!--是否在当前路径下新加一层-->
            <property name="enableSubPackages" value="true" />
            <!--是否对String类型字段在set的时候进行trim调用-->
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <!-- 生成SQL映射文件的包名和位置 -->
        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>

        <!-- 生成Mapper接口的包名和位置 -->
        <javaClientGenerator
                type="XMLMAPPER"
                targetPackage="com.wangxs.springcloud.mapper"
                targetProject="src/main/java">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>

        <!-- 要生成的表tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
        <!-- 后面的几个false是关闭生成实体类对应的Example,该文件扩展性与灵活性不太好 -->
        <table tableName="t_blog" domainObjectName="Blog" 
            enableCountByExample="false" 
            enableUpdateByExample="false"
            enableDeleteByExample="false" 
            enableSelectByExample="false" 
            selectByExampleQueryId="false"/>
    </context>
</generatorConfiguration>

3、上面步骤完成已经配置结束,直接运行则可生成文件

双击红色框框里的东西运行即可完成逆向工程

不必管我截图中的项目是什么类型的,只要按照步骤进行即可

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐