Mybatis 逆向工程

Mybatis逆向工程:

推荐用Java和XML Configuration的方式生成逆向文件

Java类:

package generation;

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 Generation {

    public void generation() 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) {
        Generation generation = new Generation();
        try {
            generation.generation();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

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="E:\JavaPack\JAR\MySQL\mysql-connector-java-5.1.28-bin.jar" />
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true" />
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <!--数据库链接地址账号密码 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://172.22.144.214/HaiNan" userId="root"
            password="Abcd1234">
        </jdbcConnection>
        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL
            和 NUMERIC 类型解析为java.math.BigDecimal -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>
        <!--生成Model类存放位置 -->
        <javaModelGenerator targetPackage="cn.edu.hainan.model"
            targetProject="src">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />

        </javaModelGenerator>
        <!--生成映射文件存放位置 -->
        <sqlMapGenerator targetPackage="cn.edu.hainan.mapper"
            targetProject="src">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>
        <!--生成Dao类存放位置 -->
        <javaClientGenerator type="XMLMAPPER"
            targetPackage="cn.edu.hainan.mapper" targetProject="src">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        <!--生成对应表及类名 -->
        <table tableName="company" domainObjectName="Company"
            enableCountByExample="false" enableUpdateByExample="false"
            enableDeleteByExample="false" enableSelectByExample="false"
            selectByExampleQueryId="false">
            <property name="useActualColumnNames" value="true" />
        </table>
    </context>

</generatorConfiguration>

注意:在表中如果<table>标签中没有配置<property name="useActualColumnNames" value="true" />,生成的类的属性不符合驼峰命名的规则

时间: 2024-07-29 20:41:11

Mybatis 逆向工程的相关文章

Mac下使用mybatis逆向工程遇到的问题

2017-08-29 使用mybatis逆向工程生成代码时工程运行成功,但是没有代码生成. 出现问题的代码: <sqlMapGenerator targetPackage="xx.xx.mapper" targetProject=".\src"> mac下应将".\src" 改为"./src" 代码生成成功!

Mybatis逆向工程

Mybatis逆向工程可以针对数据库中的单表自动生成Mybatis执行时所需要的代码.包括实体类PO.mapper.java接口.mapper.xml映射文件. 步骤: 在src下添加GeneratorSqlmap.java类 import org.mybatis.generator.api.MyBatisGenerator; import org.mybatis.generator.config.Configuration; import org.mybatis.generator.confi

ssm项目之mybatis逆向工程与修改测试

以员工和部门表为例 一.mybatis生成代码 本来要写dao,bean,和mapper文件,但是使用mybatis逆向工程可以自动生成 http://www.mybatis.org/generator/ 引入quick start guide里面的jar包,我们可以用Maven引入mybatis generator,同样去http://mvnrepository.com/ 找(我用的是1.3.5) 可以按这个http://www.mybatis.org/generator/configrefe

mybatis逆向工程出现的问题

在IDEA中,进行mybatis逆向工程生成代码时,出现了一些令人苦恼的问题,老是连接出现问题,然而Navicat却是可以正常连接MySql8.0.11的,经过不断的尝试,终于解决了问题. 0.其实一开始安装好Navicat创建数据库连接,点击连接测试测试时,就出现了问题:1251- Client does not support authentication protocol. 网上百度了下: 原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql

回顾一下MyBatis逆向工程——自动生成代码

前言 最近做的项目(SSM+Shiro)的数据库表已经创建完成,一共有15张表,如果我们一个个去写pojo/bean的代码以及各种sql语句的话未免太过麻烦而且很容易出错,这个时候我们就需要MyBatis逆向工程去为我们生成这些基本的东西.先来简单的了解一下什么是逆向工程 一 什么是逆向工程 官网解释浓缩版:MyBatis逆向工程需要用到的就是MyBatis官方提供的MyBatis Generator(MBG).MBG是MyBatis和iBATIS的代码生成器,它将为所有版本的MyBatis以及

generator mybatis逆向工程

mybatis逆向工程:根据数据库中的表在项目中生成对应的 实体类,dao接口与mapper.xml映射文件 在eclipse中,以插件的形式的存在,把设置好的配置文件,直接通过eclipse中的插件运行即可(如何下载使用百度)在idea中,maven以<plugin>的形式集成.在<build>子节点下添加pom.xml中的 plugin 代码.并编写好用于生成的配置代码(后面作解释). <?xml version="1.0" encoding=&quo

MyBatis逆向工程自动生成代码

MyBatis逆向工程根据数据库表自动生成mapper.xml,entity类,mapper类,简直不要 太方便好嘛 下面贴上关键配置代码,以免以后找不到 generator.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configurati

mybatis逆向工程的注意事项,以及数据库表

1.选择性更新,如果有新参数就更换成新参数,如果参数是null就不更新,还是原来的参数 2.mybatis使用逆向工程,数据库建表的字段user_id必须用下滑线隔开,这样生成的对象private Long userId;mapper.xml文件也会自动换成大写 3.当数据库中的字段是text类型时,使用mybatis逆向工程要在generatorConfig.xml配置文件中修改<table schema="" tableName="problem_solving&q

使用IDEA工具采用MyBatis逆向工程生成

首先使用Spring Initializr快速创建方式,如图所示: 第二步,在src下创建MBG.xml配置文件  MBG.xml配置内容如下: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" &qu