zoukankan      html  css  js  c++  java
  • MyBatis -- generator 逆向工程

    一、引言

    官网文档:http://www.mybatis.org/generator/index.html

    通过使用官方提供的mapper自动生成工具,mybatis-generator-core-1.3.2来自动生成po类和mapper映射文件。

    作用:mybatis官方提供逆向工程,可以使用它通过数据库中的表来自动生成Mapper接口和映射文件(单表增删改查)和Po类.

    1.需要导入的jar包

      

    2.mapper生成配置文件

      需要在generatorConfig.xml 中配置mapper生成的详细信息,主要需要修改的几个点:

      1)添加要生成的数据库表

      2)po文件所在的包的路径

      3)mapper文所在包的路径

    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>
        <context id="MybatisGenerator" targetRuntime="MyBatis3">
            <commentGenerator>
                <!-- 是否去除自动生成的注释 -->
                <property name="supressAllComments" value="true" />
            </commentGenerator>
    
            <!-- 数据库连接信息:驱动类、连接地址、用户名、密码 -->
            <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                connectionURL="jdbc:mysql://localhost:3306/springmvc?serverTimezone=UTC"
                userId="root" password="950806">
            </jdbcConnection>
    
            <!-- 默认值 -->
            <javaTypeResolver>
                <property name="forceBigDecimals" value="false" />
            </javaTypeResolver>
    
            <!-- 生成的po实体类的存放位置 -->
            <javaModelGenerator targetPackage="po"
                targetProject=".src">
                <property name="enableSubPackages" value="true" />
                <property name="trimStrings" value="true" />
            </javaModelGenerator>
    
            <!-- 生成的mapper映射文件(XML文件)的存放位置 -->
            <sqlMapGenerator targetPackage="mapper"
                targetProject=".src">
                <property name="enableSubPackages" value="false" />
            </sqlMapGenerator>
    
            <!-- 生成的mapper接口(JAVA文件)的存放位置 -->
            <javaClientGenerator type="XMLMAPPER"
                targetPackage="mapper" targetProject=".src">
                <property name="enableSubPackages" value="false" />
            </javaClientGenerator>
    
            <!-- 指定数据库表 -->
            <table tableName="items" />
            <table tableName="users" />
    
        </context>
    </generatorConfiguration>

    3.配置完后,编写java类生成mapper文件

    import java.io.File;
    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.internal.DefaultShellCallback;
    
    public class MyGenerator {
        public void generate() throws Exception {
    
            List<String> warnings = new ArrayList<String>();
            boolean overwrite = true;
            File configFile = new File("GeneratorConfig.xml");
            ConfigurationParser cp = new ConfigurationParser(warnings);
            Configuration config = cp.parseConfiguration(configFile);
            DefaultShellCallback callback = new DefaultShellCallback(overwrite);
            MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
            myBatisGenerator.generate(null);
    
        }
    
        public static void main(String[] args) throws Exception {
            MyGenerator myGenerator = new MyGenerator();
            myGenerator.generate();
        }
    
    }

    4.执行java程序,自动对数据库中的表数据生成相应的mapper映射文件和po文件

    刷新包结构:生成了需要的po文件和mapper映射文件

  • 相关阅读:
    std::function与std::bind 函数指针
    cocos2dx 3.0 +VS2013 环境搭建
    matrix(dp)
    sequence1(暴力)
    uva
    hpu第五届acm比赛
    找球号(一)(hask表)
    Elven Postman(二叉树)
    链表的基本操作
    Sightseeing Cows(最优比率环)
  • 原文地址:https://www.cnblogs.com/wy-blogs/p/10040916.html
Copyright © 2011-2022 走看看