温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Mybatis逆向工程的实现

发布时间:2020-08-04 09:42:07 来源:亿速云 阅读:144 作者:小猪 栏目:编程语言

这篇文章主要讲解了Mybatis逆向工程的实现,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

简单的理解,MyBatis逆向工程,就是通过相应插件,自动生成MyBatis数据库连接的一些文件。

mybatis需要编写sql语句,mybatis官方提供逆向工程,可以针对单表自动生成mybatis执行所需要的代码(mapper.java、mapper.xml、pojo…),提高工作效率。

命令:

mvn mybatis-generator:generate

项目结构:

Mybatis逆向工程的实现

generatorConfig.xml内容示例

<&#63;xml version="1.0" encoding="UTF-8"&#63;>
<!DOCTYPE generatorConfiguration
    PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
    "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>

  <context id="mysqlgenerator" targetRuntime="MyBatis3">
    <property name="autoDelimitKeywords" value="true"/>
    <!--可以使用``包括字段名,避免字段名与sql保留字冲突报错-->
    <property name="beginningDelimiter" value="`"/>
    <property name="endingDelimiter" value="`"/>

    <!-- 自动生成toString方法 -->
    <plugin type="org.mybatis.generator.plugins.ToStringPlugin"/>
    <!-- 自动生成equals方法和hashcode方法 -->
    <plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin"/>

    <!-- 非官方插件 https://github.com/itfsw/mybatis-generator-plugin -->
    <!-- 查询单条数据插件 -->
    <plugin type="com.itfsw.mybatis.generator.plugins.SelectOneByExamplePlugin"/>
    <!-- 查询结果选择性返回插件 -->
    <plugin type="com.itfsw.mybatis.generator.plugins.SelectSelectivePlugin"/>
    <!-- Example Criteria 增强插件 -->
    <plugin type="com.itfsw.mybatis.generator.plugins.ExampleEnhancedPlugin"/>
    <!-- 数据Model属性对应Column获取插件 -->
    <plugin type="com.itfsw.mybatis.generator.plugins.ModelColumnPlugin"/>
    <!-- 逻辑删除插件 -->
    <plugin type="com.itfsw.mybatis.generator.plugins.LogicalDeletePlugin">
      <!-- 这里配置的是全局逻辑删除列和逻辑删除值,当然在table中配置的值会覆盖该全局配置 -->
      <!-- 逻辑删除列类型只能为数字、字符串或者布尔类型,数据库中用tinyint(1) -->
      <property name="logicalDeleteColumn" value="deleted"/>
      <!-- 逻辑删除-已删除值 -->
      <property name="logicalDeleteValue" value="1"/>
      <!-- 逻辑删除-未删除值 -->
      <property name="logicalUnDeleteValue" value="0"/>
    </plugin>

    <commentGenerator>
      <property name="suppressDate" value="true"/>
      <!--<property name="suppressAllComments" value="true"/>-->
    </commentGenerator>

    <!--数据库连接信息-->
    <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://192.168.1.100:3306/theorydance&#63;useUnicode=true&amp;characterEncoding=UTF-8&amp;serverTimezone=UTC&amp;verifyServerCertificate=false&amp;useSSL=false"
            userId="root"
            password="123456"/>

    <javaTypeResolver>
      <property name="useJSR310Types" value="true"/>
    </javaTypeResolver>

    <javaModelGenerator targetPackage="demo.theorydance.db.domain" targetProject="src/main/java"/>
    <sqlMapGenerator targetPackage="demo.theorydance.db.dao" targetProject="src/main/resources"/>
    <javaClientGenerator type="XMLMAPPER" targetPackage="demo.theorydance.db.dao"
               targetProject="src/main/java"/>
    <!--表名-->
    <table tableName="student"></table>
  </context>
</generatorConfiguration>

pom.xml中添加插件

<build>
    <plugins>
      <plugin>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
        <version>1.3.7</version>
        <configuration>
          <configurationFile>
            mybatis-generator/generatorConfig.xml
          </configurationFile>
          <overwrite>true</overwrite>
          <verbose>true</verbose>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.46</version>
          </dependency>
          <dependency>
            <groupId>com.itfsw</groupId>
            <artifactId>mybatis-generator-plugin</artifactId>
            <version>1.2.12</version>
          </dependency>
        </dependencies>
      </plugin>

    </plugins>

  </build>

看完上述内容,是不是对Mybatis逆向工程的实现有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI