mybaits反向生成

mybaits反向生成

1 首先创建一个springboot项目 pomx.xml中的内容在最下面

2 在resources下创建一个mybaits文件夹。文件下创建一个generatorConfig.xml。
再创建一个mappers包。
3 在java下创建mapper包和pojo
在这里插入图片描述
找到maven中的插件运行插件生成对应的文件
在这里插入图片描述
注意:看注释里面的数据库连接信息,实体类的地址,映射文件的地址和dao接口的地址,以及数据库表,这些都需要自己根据自己的环境和需求指定。

1 mysql数据库相关配置(mysql驱动包路径,数据库相关信息)
2 实体类生成位置(包,支持相对和绝对路径)
3 dao接口和映射文件的位置
4 指定数据库表,生成实体类和文件的名字

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>
	<!--
     targetRuntime常用值:
        MyBatis3Simple(只生成基本的CRUD和少量的动态SQL)
        MyBatis3(生成完整的CRUD,包含CriteriaAPI方法Example后缀的方法)
     -->
    <context id="localhost_mysql" targetRuntime="MyBatis3">

        <!-- 不生成注释 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        </commentGenerator>

        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/taotao?characterEncoding=utf8&amp;serverTimezone=UTC"
                        userId="root"
                        password="123456">
        </jdbcConnection>

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

		<!-- 生成实体类 -->
        <javaModelGenerator targetPackage="com.taotao.pojo" targetProject="src/main/java">
            <property name="enableSubPackages" value="false" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

		<!-- 生成XML Mapper -->
        <sqlMapGenerator targetPackage="src/main/resources/mappers" targetProject=".">
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>

		<!-- 生成Mapper接口 -->
        <!-- 生成的Mapper类型:ANNOTATEDMAPPER(注解)、MIXEDMAPPER(混合)、XMLMAPPER(XML) -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.taotao.mapper"  targetProject="src/main/java">
            <!-- 是否将数据库中的schema作为包名的一部分,默认就是false -->
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>


        <!--<table schema="lanou" tableName="message" domainObjectName="Message">
            &lt;!&ndash; 是否用数据库中的字段名作为POJO属性名(不自动转小驼峰),默认值是false &ndash;&gt;

            &lt;!&ndash;
            <property name="useActualColumnNames" value="true"/>
            &ndash;&gt;
            &lt;!&ndash; 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 &ndash;&gt;

            <generatedKey column="id" sqlStatement="mysql" identity="true" />

            &lt;!&ndash; 此标签用于在生成代码时忽略数据库中的某个字段 &ndash;&gt;
            &lt;!&ndash;
            <ignoreColumn column="FRED" />
            &ndash;&gt;
            &lt;!&ndash; 通过此标签重写mybatis从数据库读到的元信息,自定义列相关配置,包括(名称、类型) &ndash;&gt;
            &lt;!&ndash;
            <columnOverride column="aa" property="sname" />
            &ndash;&gt;

            </table>-->

        <table schema="" tableName="tb_content">
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_content_category">
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_item" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_item_cat" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_item_desc" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_item_param" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_item_param_item" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_order" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_order_item" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_order_shipping" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
        <table schema="" tableName="tb_user" >
            <!-- 生成代码时支持获取插入数据后自增的ID, 需要通过sqlStatement配置数据库类型。 -->
            <generatedKey column="id" sqlStatement="mysql" identity="true" />
        </table>
    </context>
</generatorConfiguration>

pom.xml

    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.itzz</groupId>
    <artifactId>taotao</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>taotao</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.3</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <fork>true</fork>
                </configuration>
            </plugin>

            <!-- 定义mybatis代码生成插件 -->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.7</version>
                <executions>
                    <execution>
                        <id>Generate MyBatis Artifacts</id>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <!-- ${basedir}是maven提供的内置变量,获取的是项目根目录的路径 -->
                    <!-- 指定自定义配置文件(代码生成工具)路径 -->
                    <configurationFile>${basedir}/src/main/resources/mybatis/generatorConfig.xml</configurationFile>
                    <includeCompileDependencies>true</includeCompileDependencies>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>
        </plugins>
    </build>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值