zoukankan      html  css  js  c++  java
  • mybatis 三剑客 generator配置 、mybatis plugin

    generator配置

    1、配置pom.xml 导入mysql驱动、mybatis、mybatis-generator的依赖

     <dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis</artifactId>
          <version>3.3.1</version>
        </dependency>
    
        <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
          <version>5.1.38</version>
        </dependency>
    
        <dependency>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-core</artifactId>
          <version>1.3.3</version>
        </dependency>

    2、在main/resources 文件夹中 创建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>
    
        <!--导入配置文件-->
        <properties resource="datasource.properties"></properties>
    
        <context id="MySqlContext" targetRuntime="MyBatis3" defaultModelType="flat">
    
            <!--配置前分隔符属性 和 后分隔符属性-->
            <property name="beginningDelimiter" value="`"/>
            <property name="endingDelimiter" value="`"/>
            <!--<property name="javaFileEncoding" value="UTF-8"/>-->
    
            <!--对注释进行控制-->
            <commentGenerator>
                <!--阻止生成注释-->
                <property name="suppressAllComments" value="true"/>
                <!--<property name="suppressDate" value="false"/>-->
                <property name="addRemarkComments" value="true"/>
            </commentGenerator>
    
            <!--jdbc的数据库连接-->
            <!--<jdbcConnection driverClass="com.mysql.jdbc.Driver"-->
                            <!--connectionURL="jdbc:mysql://localhost:3306/mybatis"-->
                            <!--userId="root"-->
                            <!--password="123456">-->
            <!--</jdbcConnection>-->
            <!--jdbc的数据库连接-->
            <jdbcConnection driverClass="${db.driverClassName}"
                            connectionURL="${db.url}"
                            userId="${db.username}"
                            password="${db.password}">
            </jdbcConnection>
    
            <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
            <javaTypeResolver>
                <property name="forceBigDecimals" value="false"/>
            </javaTypeResolver>
    
    
            <!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
             targetPackage     指定生成的model生成所在的包名
             targetProject     指定在该项目下所在的路径
         -->
            <javaModelGenerator targetPackage="com.mmall.pojo" targetProject="srcmainjava">
                <!-- 是否允许子包,即targetPackage.schemaName.tableName -->
                <property name="enableSubPackages" value="false"/>
                <!-- 是否对model添加 构造函数 -->
                <property name="constructorBased" value="true"/>
                <!-- 是否对类CHAR类型的列的数据进行trim操作 -->
                <property name="trimStrings" value="true"/>
                <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 -->
                <property name="immutable" value="false"/>
            </javaModelGenerator>
    
            
            <!--mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
            <sqlMapGenerator targetPackage="mappers" targetProject="srcmain
    esources"/>
    
            <!-- targetPackage:mapper接口dao生成的位置 -->
            <javaClientGenerator type="XMLMAPPER" targetPackage="com.mmall.dao" targetProject="srcmainjava"/>
    
            <!--<table tableName="%">-->
                <!--<generatedKey column="id" sqlStatement="MySql"/>-->
            <!--</table>-->
            <table tableName="mmall_shipping" domainObjectName="Shipping" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            <table tableName="mmall_cart" domainObjectName="Cart" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            <!--<table tableName="mmall_cart_item" domainObjectName="CartItem" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>-->
            <table tableName="mmall_category" domainObjectName="Category" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            <table tableName="mmall_order" domainObjectName="Order" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            <table tableName="mmall_order_item" domainObjectName="OrderItem" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            <table tableName="mmall_pay_info" domainObjectName="PayInfo" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
            <table tableName="mmall_product" domainObjectName="Product" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
                <columnOverride column="detail" jdbcType="VARCHAR" />
                <columnOverride column="sub_images" jdbcType="VARCHAR" />
            </table>
            <table tableName="mmall_user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
        </context>
    </generatorConfiguration>

    以上还创建了datasource.properties

    db.driverClassName=com.mysql.jdbc.Driver
    #db.url=jdbc:mysql://192.1.1.1:3306/mmall?characterEncoding=utf-8
    #db.url=jdbc:mysql://你的数据库IP:你的数据库Port/你的database?characterEncoding=utf-8
    db.url=jdbc:mysql://localhost:3306/shoppingmall?characterEncoding=utf-8
    db.username=root
    db.password=123456

    3、配置好上述文件后 创建Generator.java 来生成文件

    public class Generator {
    
        public static void main(String[] args) throws Exception {
            //MBG 执行过程中的警告信息
            List<String> warnings = new ArrayList<String>();
            //当生成的代码重复时,覆盖原代码
            boolean overwrite = true;
            //读取我们的 MBG 配置文件
            InputStream is = Generator.class.getResourceAsStream("generatorConfig.xml");
            ConfigurationParser cp = new ConfigurationParser(warnings);
            Configuration config = cp.parseConfiguration(is);
            is.close();
    
            DefaultShellCallback callback = new DefaultShellCallback(overwrite);
            //创建 MBG
            MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
            //执行生成代码
            myBatisGenerator.generate(null);
            //输出警告信息
            for(String warning : warnings){
                System.out.println(warning);
            }
        }
    }

    mybatis plugin

    在idea 里面 下载 plugin (mybatis plugin)

  • 相关阅读:
    webpack实践(三)- html-webpack-plugin
    webpack实践(二)- webpack配置文件
    webpack实践(一)- 先入个门
    VueRouter爬坑第三篇-嵌套路由
    VueRouter爬坑第二篇-动态路由
    chrome中安装Vue调试工具vue-devtools
    VueRouter爬坑第一篇-简单实践
    使用vue-cli搭建项目开发环境
    Jmeter基础001----jmeter的安装与配置
    接口测试基础001----接口、接口测试
  • 原文地址:https://www.cnblogs.com/zquan/p/9980750.html
Copyright © 2011-2022 走看看