• Mybatis 如何自动生成bean dao xml 配置文件 generatorconfig.xml (main()方法自动生成更快捷)


    最近项目要用到mybatis中间件,中间涉及到要对表结构生成bean,dao,和sqlconfig.xml 所以记录一下学习过程

    首先是准备工作,即准备需要的jar包:我们的数据库mysql,所以驱动用的mysql-connector-java-5.1.25-bin.jar 另外还需要 mybatis的jar包: mybatis-3.0.5-SNAPSHOT.jar

    及自动生成的jar包:mybatis-generator-core-1.3.2.jar ....这些都可以到网上下载。。。

    我首先是测试这个自动生成功能,所以没直接在项目里配置,而是先在 f盘测试了一下: 将三个jar包放入F: estlib下

    其次是准备generatorconfig.xml ,将此文件直接放到F: est 下。   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="mysql-connector-java-5.1.25-bin.jar" />

    <context id="mysql" targetRuntime="MyBatis3">

    <!--配置数据库链接-->

    <jdbcConnection driverClass="com.mysql.jdbc.Driver"
    connectionURL="jdbc:mysql://localhost:3306/test?characterEncoding=utf8" userId="root"
    password="20114267">
    </jdbcConnection>

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


    <!--配置实体bean-->

    <javaModelGenerator targetPackage="xmlParer"
    targetProject="F: estxmlParer">
    <property name="enableSubPackages" value="true" />
    <property name="trimStrings" value="true" />
    </javaModelGenerator>
    <!--配置实体map接口(dao)-->
    <sqlMapGenerator targetPackage="xmlParer"
    targetProject="F: estxmlParer">
    <property name="enableSubPackages" value="true" />
    </sqlMapGenerator>

    <!--配置实体bean的sql.xml-->
    <javaClientGenerator type="XMLMAPPER"
    targetPackage="xmlParer"
    targetProject="F: estxmlParer">
    <property name="enableSubPackages" value="true" />
    </javaClientGenerator>

    <!--配置实体-->

    <table tableName="user" domainObjectName="User">

    </table>
    </context>
    </generatorConfiguration>

    因为是简单的测试,所以我的bean和dao及xml 都放到了统一的目录下了。。。F: estxmlParer

    最后 在cmd命令行 执行

    将目录切换到 F: estlib 下

    java -jar mybatis-generator-core-1.3.2.jar -configfile  F: estgeneratorconfig.xml -overwrite 

    这样基本就ok了

    后来还研究了一下 在java的main方法去执行。也ok

    今天把上次main方法读取配置 自动生成bean,及map的代码复制过来 供大家参考

    首先先建立一个WEB工程,在lib下导入相应的包,src下建立相应的包




    import java.io.File;
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List;

    import org.mybatis.generator.api.MyBatisGenerator;
    import org.mybatis.generator.config.Configuration;
    import org.mybatis.generator.config.xml.ConfigurationParser;
    import org.mybatis.generator.exception.XMLParserException;
    import org.mybatis.generator.internal.DefaultShellCallback;



    public class test {
    public static void main(String[] args) {
    List<String> warnings = new ArrayList<String>();
    boolean overwrite = true;
    File configFile = new File("src/generatorConfig.xml");
    ConfigurationParser cp = new ConfigurationParser(warnings);
    Configuration config;
    try {
    config = cp.parseConfiguration(configFile);

    DefaultShellCallback callback = new DefaultShellCallback(overwrite);
    MyBatisGenerator myBatisGenerator;
    try {
    myBatisGenerator = new MyBatisGenerator(config, callback,
    warnings);
    myBatisGenerator.generate(null);
    } catch (Exception e) {

    e.printStackTrace();
    }

    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (XMLParserException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    }

    这样就更方便自动生成代码了

  • 相关阅读:
    node.js(八 --- express)
    node.js(六 --- 文件系统模块fs)
    node.js( 五 --- 常用工具util)
    node.js(四 --- 全局对象)
    python 判断变量是否存在 防止报错
    python requests 的cookie 操作
    DDOS 攻击的防范
    python图片识别
    php常见问题-foreach和引用造成的问题。
    数据库数据类型选择
  • 原文地址:https://www.cnblogs.com/whsa/p/3800612.html
Copyright © 2020-2023  润新知