zoukankan      html  css  js  c++  java
  • mybatis-generator

    写在前面:

    1 可以实现一些单表比较通用的增删改查

    2 还是要多联系一些手写sql脚本,熟能生巧。

    3 个人觉得生成实体类还是比较方便的。

    方法:

    1 配置 pom 2 修改配置文件.xml 3 点击生成

     1 <plugin>
     2                 <groupId>org.mybatis.generator</groupId>
     3                 <artifactId>mybatis-generator-maven-plugin</artifactId>
     4                 <version>1.3.2</version>
     5                 <executions>
     6                     <execution>
     7                         <id>mybatis-generator</id>
     8                         <phase>deploy</phase>
     9                         <goals>
    10                             <goal>generate</goal>
    11                         </goals>
    12                     </execution>
    13                 </executions>
    14                 <configuration>
    15                     <!-- Mybatis-Generator 工具配置文件的位置 -->
    16                     <configurationFile>src/main/resources/mybatis-generator/generatorConfig.xml</configurationFile>
    17                     <verbose>true</verbose>
    18                     <overwrite>true</overwrite>
    19                 </configuration>
    20                 <dependencies>
    21                     <dependency>
    22                         <groupId>mysql</groupId>
    23                         <artifactId>mysql-connector-java</artifactId>
    24                         <version>5.1.46</version>
    25                     </dependency>
    26                     <dependency>
    27                         <groupId>org.mybatis.generator</groupId>
    28                         <artifactId>mybatis-generator-core</artifactId>
    29                         <version>1.3.2</version>
    30                     </dependency>
    31                 </dependencies>
    32             </plugin>
    <?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>
        <!--执行generator插件生成文件的命令: call mvn mybatis-generator:generate -e -->
        <!-- 引入配置文件 -->
        <properties resource="application.yml"/>
        <!--classPathEntry:数据库的JDBC驱动,换成你自己的驱动位置 可选 -->
        <!--<classPathEntry location="D:generator_mybatismysql-connector-java-5.1.24-bin.jar" /> -->
    
        <!-- 一个数据库一个context -->
        <!--defaultModelType="flat" 大数据字段,不分表 -->
        <!--targetRuntime="Mybatis" 和 targetRuntime="MyBatis3Simple" MyBatis3模式默认生成的对象将包
        含很多"by Example"的方法,如果不想生成这些,可以在后续的table元素中配置取消;MyBatis3Simple模式默认
        每个表生成一个实体对象,生成的Mapper接口仅包含必须的5个方法:deleteByPrimaryKey、insert、
        selectByPrimaryKey、selectAll、updateByPrimaryKey。-->
        <context id="MysqlTables" targetRuntime="MyBatis3" defaultModelType="flat">
            <!-- 自动识别数据库关键字,默认false,如果设置为true,根据SqlReservedWords中定义的关键字列表;
            一般保留默认值,遇到数据库关键字(Java关键字),使用columnOverride覆盖 -->
            <property name="autoDelimitKeywords" value="true" />
            <!-- 生成的Java文件的编码 -->
            <property name="javaFileEncoding" value="utf-8" />
            <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对象名的符号,比如ORACLE就是双引号,MYSQL默认是`反引号; -->
            <property name="beginningDelimiter" value="`" />
            <property name="endingDelimiter" value="`" />
    
            <!-- 格式化java代码 -->
            <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
            <!-- 格式化XML代码 -->
            <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
            <plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
    
            <plugin type="org.mybatis.generator.plugins.ToStringPlugin" />
    
            <!-- 注释 -->
            <commentGenerator >
                <property name="suppressAllComments" value="false"/><!-- 是否取消注释 -->
                <property name="suppressDate" value="true" /> <!-- 是否生成注释代时间戳-->
            </commentGenerator>
    
            <!-- jdbc连接 -->
            <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/csj_mysql?useUnicode=true&amp;characterEncoding=utf-8&amp;useSSL=false&amp;serverTimezone = GMT" userId="root" password="root" />
            <!-- 类型转换 -->
            <javaTypeResolver>
                <!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->
                <property name="forceBigDecimals" value="false"/>
            </javaTypeResolver>
    
            <!-- 生成实体类地址 -->
            <javaModelGenerator targetPackage="com.brave.solid.domain.entity" targetProject="src/main/java" >
                <property name="enableSubPackages" value="false"/>
                <property name="trimStrings" value="true"/>
            </javaModelGenerator>
    
            <!--生成映射文件存放位置-->
            <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
                <property name="enableSubPackages" value="true"/>
            </sqlMapGenerator>
            <!--生成Dao类存放位置-->
            <javaClientGenerator type="XMLMAPPER" targetPackage="com.brave.solid.domain.mapper"
                                 targetProject="src/main/java">
                <property name="enableSubPackages" value="true"/>
            </javaClientGenerator>
            <!-- table可以有多个,每个数据库中的表都可以写一个table,tableName表示要匹配的数据库表,也可以在tableName属性中通过使用%通配符来匹配所有数据库表,只有匹配的表才会自动生成文件 -->
            <table tableName="user" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true">
                <!-- 数据库表主键 -->
                <generatedKey column="id" sqlStatement="Mysql" identity="true" />
            </table>
        </context>
    </generatorConfiguration>

  • 相关阅读:
    打开安装 好的Microsoft Dynamics CRM 4.0 报错误为 Caller does not have enough privilege to set CallerOriginToken to the specified value 的解决办法
    基于 Windows Server 2008 的计算机对 Microsoft Dynamics CRM 4.0 的支持
    Microsoft Dynamics CRM 4.0 如何添加自定义按钮
    Microsoft Dynamics CRM 4.0 Plugin 取值,赋值,查询
    C# 中的 enum(枚举) 类型使用例子
    vue事件的绑定
    表单验证2
    node中模块
    node模块的引入
    node中的读文件
  • 原文地址:https://www.cnblogs.com/junbaba/p/13632353.html
Copyright © 2011-2022 走看看