逆向⼯程,基于tkMapper

逆向⼯程 ,根据创建好的数据表,⽣成实体类、 DAO、映射⽂件。

1.添加逆向⼯程依赖

是依赖是⼀个mybatismaven插件

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.5</version>

                <dependencies>
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>5.1.47</version>
                    </dependency>
                    <dependency>
                        <groupId>tk.mybatis</groupId>
                        <artifactId>mapper</artifactId>
                        <version>3.4.4</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

2.逆向⼯程配置

···在 resources/generator ⽬录下创建 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="jdbc.properties"/>-->
    <context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>
        
        <!-- 配置 GeneralDAO -->
        <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
            <property name="mappers" value="com.qfedu.tkmapperdemo.general.GeneralDAO"/>
        </plugin>

        <!-- 配置数据库连接 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/fmmall2"
                        userId="root" password="123456">
        </jdbcConnection>

        <!-- 配置实体类存放路径 -->
        <javaModelGenerator targetPackage="com.qfedu.tkmapperdemo.beans"
                            targetProject="src/main/java"/>

        <!-- 配置 XML 存放路径 -->
        <sqlMapGenerator targetPackage="/" targetProject="src/main/resources/mappers"/>

        <!-- 配置 DAO 存放路径 -->
        <javaClientGenerator targetPackage="com.qfedu.tkmapperdemo.dao"
                             targetProject="src/main/java" type="XMLMAPPER"/>

        <!-- 配置需要指定⽣成的数据库和表,% 代表所有表 -->
        <table tableName="%">
            <!-- mysql 配置 -->
            <!-- <generatedKey column="id" sqlStatement="Mysql" identity="true"/>-->
        </table>
        <!-- <table tableName="tb_roles">-->
        <!-- &lt;!&ndash; mysql 配置 &ndash;&gt;-->
        <!-- <generatedKey column="roleid" sqlStatement="Mysql" identity="true"/>-->
        <!-- </table>-->
        <!-- <table tableName="tb_permissions">-->
        <!-- &lt;!&ndash; mysql 配置 &ndash;&gt;-->
        <!-- <generatedKey column="perid" sqlStatement="Mysql" identity="true"/>-->
        <!-- </table>-->
    </context>
</generatorConfiguration>

3.将配置⽂件设置到逆向⼯程的maven插件

<configuration>                                                             
    <configurationFile>
        ${basedir}/src/main/resources/generator/generatorConfig.xml
    </configurationFile>
</configuration>

 4.执⾏逆向⽣成

执行mybatis-generator插件下的mybatis-generator:generate

 完成,节约大量时间。

MyBatis 逆向工程的优点

使用 MyBatis 逆向工程来自动生成需要的资源,减少开发者的工作量,让开发者可以将精力集中在业务逻辑上,而非是创建实体类,Repository 接口等工作。

MyBatis 逆向工程的缺点

逆向工程有局限性,方法只能执行一次,如果再次执行就会重复生成 Repositpory 接口,实体类等资源,如果需要对表结构进行修改,那么就必须删除已经生成的所有资源,重新生成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值