`

MyBatis 自动生成xml文件

阅读更多
package com.test.mybatis;

import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
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.InvalidConfigurationException;
import org.mybatis.generator.exception.XMLParserException;
import org.mybatis.generator.internal.DefaultShellCallback;

public class MybatisGeneratorUtil {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        try {
            System.out.println("start generator ...");
            List<String> warnings = new ArrayList<String>();
            boolean overwrite = true;
            File configFile = new File(MybatisGeneratorUtil.class.getResource(
                    "./generator.xml").getFile());
            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);
            System.out.println("end generator!");
        }
        catch (IOException e) {
            e.printStackTrace();
        }
        catch (XMLParserException e) {
            e.printStackTrace();
        }
        catch (InvalidConfigurationException e) {
            e.printStackTrace();
        }
        catch (SQLException e) {
            e.printStackTrace();
        }
        catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}



配置文件:
<?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:\WorkSpace\webtest\web\WEB-INF\lib\ojdbc14-10.2.0.4.0.jar" />  
  
  <context id="Mysql2Tables" targetRuntime="MyBatis3">  
    <jdbcConnection driverClass="oracle.jdbc.OracleDriver"  
        connectionURL="jdbc:oracle:thin:@10.10.10.10:1521:oracletemp"  
        userId="devdb"  
        password="devdb">  
    </jdbcConnection>  
  
    <javaTypeResolver >  
      <property name="forceBigDecimals" value="false" />  
    </javaTypeResolver>  
  
    <javaModelGenerator targetPackage="com.mybatis" targetProject="./">  
      <property name="enableSubPackages" value="true" />  
      <property name="trimStrings" value="true" />  
    </javaModelGenerator>  
  
    <sqlMapGenerator targetPackage="com.mybatis"  targetProject="./">  
      <property name="enableSubPackages" value="true" />  
    </sqlMapGenerator>  
  
    <javaClientGenerator type="XMLMAPPER" targetPackage="com.mybatis"  targetProject="./">  
      <property name="enableSubPackages" value="true" />  
    </javaClientGenerator>  
  
    <!-- table schema="oratcdb" Schema cannot be read. tableName="VT_DEBTCOLLECTIONPLAN" domainObjectName="DebtCollectionPlan" enableCountByExample="true" enableUpdateByExample="true"  
           enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true">  
    </table -->  
    <table schema="oracledb" tableName="T_TABLE_NAME" domainObjectName="DebtCollectionPlan" enableCountByExample="true" enableUpdateByExample="true"  
           enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true">  
    </table>  
  
  </context>  
</generatorConfiguration>  

系统pom.xml依赖
<plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.1.1</version>
                <configuration>
                    <outputDirectory>${project.basedir}/target</outputDirectory>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <port>8080</port>
                    <path>/${project.build.finalName}</path>
                    <uriEncoding>UTF-8</uriEncoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
            </plugin>
        </plugins>



输出目录: target\generated-test-sources

mybatis-generator:generate -e


<!-- http://www.mybatis.org/generator/configreference/xmlconfig.html -->
<!-- http://www.mybatis.org/mybatis-3/zh/dynamic-sql.html -->
<?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>
    <!-- SqlServer数据库驱动jar -->
    <classPathEntry location="renxiaoyao\.m2\com\microsoft\sqlserver\sqljdbc4\4.0\sqljdbc4-4.0.jar"/>

    <context id="DB2Tables" targetRuntime="Ibatis2Java5">
        <!--去除注释  -->
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!--数据库连接 -->
        <jdbcConnection driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
                        connectionURL="jdbc:sqlserver://10.10.10.10:3433;DatabaseName=SchemaName" userId="DBAdmin"
                        password="DBAdmin!@#$%^"/>
 
        <!--默认false
           Java type resolver will always use java.math.BigDecimal if the database column is of type DECIMAL or NUMERIC.
         -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <!--生成实体类 指定包名 以及生成的地址 (可以自定义地址,但是路径不存在不会自动创建  使用Maven生成在target目录下,会自动创建) -->
        <javaModelGenerator targetPackage="com.xxx.entity" targetProject="MAVEN">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--生成SQLMAP文件 -->
        <sqlMapGenerator targetPackage="com.xxx.mybatis" targetProject="MAVEN">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>
        <!--生成Dao文件 可以配置 type="XMLMAPPER"生成xml的dao实现  context id="DB2Tables" 修改targetRuntime="MyBatis3"  -->
        <javaClientGenerator type="SPRING" targetPackage="com.xxx.dao" targetProject="MAVEN">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>

        <!--对应数据库表 mysql可以加入主键自增 字段命名 忽略某字段等-->
        <table tableName="ApiType" domainObjectName="ApiType"
                       enableCountByExample="true" enableUpdateByExample="true"
                       enableDeleteByExample="true" enableSelectByExample="true"
                       selectByExampleQueryId="true">
                    <property name="useActualColumnNames" value="true" />
                </table>
</context>
        </generatorConfiguration>

  • 大小: 41.2 KB
  • 大小: 41.4 KB
分享到:
评论

相关推荐

    mybatis xml文件自动生成

    "mybatis xml文件自动生成"是开发过程中的一个重要环节,它可以帮助开发者提高效率,减少手动编写XML映射文件和对应的POJO(Plain Old Java Object)类的工作量。 MyBatis的Mapper文件是其核心组成部分之一,它包含...

    mybatis自动生成语句XML版本

    在"mybatis自动生成语句XML版本"这个项目中,我们主要关注的是如何配置和使用MBG生成针对Oracle数据库的代码。 首先,我们需要创建一个配置文件`generator_oracle_apply.xml`。这个XML文件定义了MBG的所有配置参数...

    mybatis自动生成mapper文件

    MyBatis Generator(MBG)是一款强大的工具,用于自动生成MyBatis的Mapper接口、XML映射文件以及对应的实体类。这款工具极大地提高了开发效率,减少了手动编写这些基础代码的工作量,使得开发者能够更专注于业务逻辑...

    Mybatis自动生成实体类

    Mybatis自动生成实体类,XML文件

    mybatis自动生成xml,mapper,实体类文件工具

    标题提到的“mybatis自动生成xml,mapper,实体类文件工具”就是这样一个实用的辅助工具。逆向工程基于数据库表结构,可以生成与表对应的实体类(Entity)、Mapper接口及XML映射文件,省去了手动创建的繁琐步骤。 ...

    mybatis自动生成mapper.xml文件

    本文将深入探讨如何在SpringBoot项目中整合MyBatis,并实现自动生成Mapper.xml文件、DAO接口以及对应的Model类。 首先,我们需要确保项目已经集成了SpringBoot和MyBatis的基础配置。这通常涉及以下步骤: 1. 添加...

    Mybatis自动生成工具

    Mybatis自动生成工具是一款高效实用的开发辅助软件,专为Java开发者设计,旨在简化数据库操作相关的代码编写工作。它支持MySQL和SQL Server两大主流数据库,能够自动根据数据库表结构生成对应的实体类(Entity)和...

    MyBatis自动生成配置文件全解.zip

    这个压缩包文件“MyBatis自动生成配置文件全解.zip”显然包含了关于如何配置和使用MyBatis自动代码生成器的详细指南。 首先,MyBatis的自动代码生成器(MyBatis Generator,简称MBG)是一个强大的工具,它可以自动...

    mybatis 自动生成数据库表及mapper xml

    里面包含说明使用方法,主要是mybatis生成mysql 数据库表并生成mapper对象和xml,此jar包请解压后,查看源码

    Mybatis自动代码生成工具

    Generator是一个非常实用的工具,它可以自动生成模型类、Mapper接口、Mapper XML文件以及DAO接口等,大大提高了开发效率。在使用前,我们需要配置generatorConfig.xml文件,这个配置文件包含了数据库连接信息、生成...

    myBatis自动生成工具

    mybatis自动生成全部文件mybatis-generator.xml mybatis-generator-core-1.3.1.jar mysql-connector-java-5.0.8-bin.jar

    mybatis自动生成代码

    标题 "mybatis自动生成代码" 涉及到的是MyBatis框架中的代码生成器功能。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。在开发过程中,通过MyBatis的代码生成器,开发者可以自动生成与...

    mybatis自动生成文件jar包

    "mybatis自动生成文件jar包"是指包含MyBatis代码生成器相关功能的JAR文件。这个JAR包通常包含了MyBatis代码生成器的类和依赖,使得用户在不安装完整MyBatis框架的情况下,也能运行代码生成器,生成所需的Java代码。 ...

    mybatis自动生成代码和配置文件

    在标题和描述中提到的“mybatis自动生成代码和配置文件”是一个常见的开发需求,主要是为了提高开发效率和减少错误。这个过程通常涉及到MyBatis的逆向工程(Reverse Engineering)工具或者使用一些第三方插件,如...

    mybatis自动生成工具

    而“mybatis自动生成工具”就是为了解决这个问题,帮助开发者自动生成与数据库表对应的Java实体类(DO)、Mapper接口及实现类、Controller等核心组件。 1. MyBatis自动生成器: MyBatis Generator(MBG)是官方...

    mybatis 自动生成工具

    总的来说,MyBatis Generator是MyBatis框架中一个非常实用的工具,它能够根据数据库表结构自动生成相关的Java代码,极大地减少了手动编写DAO层的工作量,提升了开发效率。在实际项目中,合理使用MBG可以使得代码更...

    myBatis自动生成器

    MyBatis自动生成器,作为一个强大的工具,极大地简化了开发者在使用MyBatis时的数据访问层(DAO)编码工作。这个工具可以根据数据库表结构自动生成相应的Java代码,包括实体类、Mapper接口、Mapper XML文件以及对应...

    Mybatis自动生成工具-脚本生成

    "Mybatis自动生成工具-脚本生成"是Mybatis的一个辅助工具,旨在帮助开发者自动化生成与数据库操作相关的代码,提高开发效率。 在Java开发中,手动编写SQL语句和对应的Mapper接口、XML配置文件是一项繁琐的工作。...

    mybatis自动生成实体类

    首先,我们需要在项目中配置MyBatis的generator.xml文件。这个文件是MyBatis Generator的配置中心,它包含了数据库连接信息、生成目标的配置以及各种自定义设置。一个基本的generator.xml配置可能如下所示: ```xml...

Global site tag (gtag.js) - Google Analytics