Mybatis逆向工程

0、mybatis逆向工程

  MyBatis的逆向工程指利用MyBatis Generator,可以快速的根据表生成对应的映射文件,接口,以及实体类。

一、导入依赖

    <!-- MBG -->
    <dependency>
      <groupId>org.mybatis.generator</groupId>
      <artifactId>mybatis-generator-core</artifactId>
      <version>1.3.5</version>
    </dependency>

注意:还需要,数据库连接依赖,mybatis核心依赖。

二、配置mybatis-generator.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=“MyBatis3“可以生成带条件的增删改查 -->
    <!--targetRuntime=“MyBatis3Simple“可以生成基本的增删改查-->
    <context id="DB2Tables" targetRuntime="MyBatis3Simple">
        <!--去除注释-->
        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        </commentGenerator>

        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/ssm"
                        userId="root"
                        password="1234">
        </jdbcConnection>

        <javaTypeResolver >
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <!-- 二、指定javabean生成的位置 -->
        <javaModelGenerator targetPackage="com.ssm.pojo"
                            targetProject=".\src\main\java">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <!-- 三、指定sql映射文件生成的位置 -->
        <sqlMapGenerator targetPackage="mapper"  targetProject=".\src\main\resources">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>

        <!-- 四、指定dao接口生成的位置 -->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.ssm.dao"
                             targetProject=".\src\main\java">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>

        <!-- 五、table指定每个表的生成策略 -->
        <!--配置要逆向解析的数据表,tableName对应表名,domainObjectName对应javaBean名-->
        <table tableName="tbl_emp" domainObjectName="Employee"></table>
        <table tableName="tbl_dept" domainObjectName="Department"></table>

    </context>
</generatorConfiguration>

三、编写mybatis逆向工程的执行代码

    public void MBG() throws Exception{
        List<String> warnings = new ArrayList<String>();
        boolean overwrite = true;
        File configFile = new File("mybaits-generator.xml");
        ConfigurationParser cp = new ConfigurationParser(warnings);
        Configuration config = cp.parseConfiguration(configFile);
        DefaultShellCallback callback = new DefaultShellCallback(overwrite);
        MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
        myBatisGenerator.generate(null);
    }

四、注意点

1.mybatis-generator.xml中的几个基本配置。数据库连接,实体类,接口,映射文件,数据表

2.生成文件的所在位置

3.可以不使用java代码进行生成,可以使用mybatis的逆向工程的插件,这里想使用个。待使用时在添加该插件。

五、使用插件

   <project ...>
     ...
     <build>
       ...
       <plugins>
        ...
        <plugin>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-maven-plugin</artifactId>
          <version>1.4.0</version>
        </plugin>
        ...
      </plugins>
      ...
    </build>
    ...
  </project>

 

posted @ 2020-03-06 19:45  tikoblog  阅读(111)  评论(0)    收藏  举报