• 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映射文件

  • 相关阅读:
    android 关于双卡设置
    android apk反编译和odex转dex
    Android中获取系统内存信息以及进程信息ActivityManager的使用(一)
    ubuntu banshee music
    linux 查看文件夹大小
    嵌入式Linux学习笔记之GPIO接口
    Android中MediaButtonReceiver广播监听器的机制分析
    在Ubuntu中VirtualBox下xp使用usb设备
    beyond compare 与git diff整合
    Linux学习笔记一 Linux基础知识认知以及初识Linux下C编程入门
  • 原文地址:https://www.cnblogs.com/wy-blogs/p/10040916.html
Copyright © 2020-2023  润新知