使用generatorConfig.xml自动生成Oracle数据库表的实体类,mapper类,和mapper的xml文件

今天亲自测试了下,希望能够帮助到大家。

需要准备

orcle11,idea ,springboot,mybatis,

我的项目文件目录

 

创建一个 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>
    <!--<classPathEntry location="G:\eclipse_tools\maven\repository\com\oracle\ojdbc\6.0\ojdbc-6.0.jar"/>-->
    <context id="context" targetRuntime="MyBatis3Simple">
        <property name="javaFileEncoding" value="UTF-8"/>
        <!--2  mapper 工具类-->
        <plugin type="tk.mybatis.mapper.generator.MapperPlugin">
            <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
            <property name="caseSensitive" value="false"/>
            <property name="forceAnnotation" value="true"/>
            <!--<property name="beginningDelimiter" value="`"/>-->
            <!--<property name="endingDelimiter" value="`"/>-->
            <property name="useMapperCommentGenerator" value="true"></property>
        </plugin>

        <jdbcConnection userId="此处填写你的数据库用户名" password="此处填写你的数据库密码" driverClass="oracle.jdbc.driver.OracleDriver"
                        connectionURL="此处填写你的数据url如:jdbc:oracle:thin:@//localhost:1521/db1">
            <!--oracle 注释生产必须加-->
            <property name="remarksReporting" value="true"></property>
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <javaModelGenerator targetPackage="指定你的model文件目录如com.example.cruddemo.model" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"><!--src/main/resources 可以不用修改 -->
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <javaClientGenerator targetPackage="指定你的mapper文件目录如com.example.cruddemo.mapper" type="XMLMAPPER"
                             targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>

        <table tableName="指定你要生成的表名如 admin_info">
  
    </context>
</generatorConfiguration>

导入依赖:

<!--mybatis逆向生成-->
<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper-spring-boot-starter</artifactId>
    <version>2.1.5</version>
</dependency>
<build>
    <!--war名-->
    <finalName>CurdDemo</finalName>
    
    <plugins>
        <!--war包-->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.7</version>
            <configuration>
                <configurationFile>
                    ${project.basedir}/generatorConfig.xml
                </configurationFile>
                <overwrite>true</overwrite>
                <verbose>true</verbose>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                    <version>8.0.13</version>
                </dependency>
                <dependency>
                    <groupId>tk.mybatis</groupId>
                    <artifactId>mapper</artifactId>
                    <version>4.1.5</version>
                </dependency>
                <dependency>
                    <groupId>cn.easyproject</groupId>
                    <artifactId>ojdbc7</artifactId>
                    <version>12.1.0.2.0</version>
                </dependency>

            </dependencies>
        </plugin>
    </plugins>

</build>

 

下面是我的成果图:

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐