`
changhongbao
  • 浏览: 116882 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

利用mybatis-generator自动生成代码

 
阅读更多


mybatis-generator
有三种用法:命令行、eclipse插件、maven插件。个人觉得maven插件最方便,可以在eclipse/intellij idea等ide上可以通用。

下面是从官网上的截图:(不过官网www.mybatis.org 最近一段时间,好象已经挂了)

一、在pom.xml中添加plugin

<plugin>
    <groupId>org.mybatis.generator</groupId>
    <artifactId>mybatis-generator-maven-plugin</artifactId>
    <version>1.3.2</version>
    <configuration>
        <configurationFile>src/main/resources/mybatis-generator/generatorConfig.xml</configurationFile>
        <verbose>true</verbose>
        <overwrite>true</overwrite>
    </configuration>
    <executions>
        <execution>
            <id>Generate MyBatis Artifacts</id>
            <goals>
                <goal>generate</goal>
            </goals>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.2</version>
        </dependency>
    </dependencies>
</plugin>

 其中generatorConfig.xml的位置,大家根据实际情况自行调整

二、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="C:/Oracle/Middleware/wlserver_10.3/server/lib/ojdbc6.jar"/>
    <context id="my" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="false"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
                        connectionURL="jdbc:oracle:thin:@172.20.16.***:1521:CARGO" userId="***"
                        password="***"/>

        <javaModelGenerator targetPackage="ctas.test.entity"
                            targetProject="D:/yangjm/Code/CTAS/JAVAEE/CTAS2CCSP/src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="ctas.test.entity.xml"
                         targetProject="D:/yangjm/Code/CTAS/JAVAEE/CTAS2CCSP/src/main/java">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>

        <javaClientGenerator targetPackage="ctas.test.mapper"
                             targetProject="D:/yangjm/Code/CTAS/JAVAEE/CTAS2CCSP/src/main/java" type="XMLMAPPER">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <!--<table tableName="T_FEE_AGTBILL" domainObjectName="FeeAgentBill"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false"/>-->

        <table tableName="CTAS_FEE_BASE" domainObjectName="FeeBase"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
            <!--<columnRenamingRule searchString="^D_"
                                replaceString=""/>-->
        </table>

    </context>
</generatorConfiguration>

 

几个要点:
a) 因为生成过程中需要连接db,所以第3行指定了驱动jar包的位置

b) 15-17行为连接字符串

c) 19-33行指定生成“entity实体类、mybatis映射xml文件、mapper接口”的具体位置

d) 40-46行为具体要生成的表,如果有多个表,复制这一段,改下表名即可

 

三、使用方式

mvn mybatis-generator:generate

如果是在intellij 环境,直接鼠标点击即可

 

最后给出目录结构图:

最后给一些小技巧:

a) 建表时,字段名称建议用"_"分隔多个单词,比如:AWB_NO、REC_ID...,这样生成的entity,属性名称就会变成漂亮的驼峰命名,即:awbNo、recId

b)oracle中,数值形的字段,如果指定精度,比如Number(12,2),默认生成entity属性是BigDecimal型 ,如果不指定精度,比如:Number(9),指默认生成的是Long型

c)oracle中的nvarchar/nvarchar2,mybatis-generator会识别成Object型,建议不要用nvarchar2,改用varchar2

  • 大小: 8.6 KB
  • 大小: 39.4 KB
  • 大小: 46.3 KB
分享到:
评论

相关推荐

    mybatis-generator-core自动生成实体类、dao接口和mapping映射文件

    利用mybatis-generator-core可以自动生成实体类、dao接口和mapping映射文件,里头也提供了使用说明: 1、进入lib文件夹里头。 2、修改generatorConfig.xml配置 主要修改数据库地址,用户名,密码,以及数据库名称,...

    mybatis-generator自动生成代码

    利用mybatis-generator自动生成代码 实现快捷操作 很方便

    mybatis-generator自动生成代码.zip

    mybatis-generator-core自动生成代码,无需集成到项目中,直接利用控制台命令生成,生成前需在generator.xml进行数据库连接等配置。

    mybatis-generator-core

    利用MyBatis Generator自动生成代码,包含mybatis-generator-core的jar包和generatorConfig.xml配置样版

    利用MyBatis-Generator自动生成代码

    NULL 博文链接:https://xieke90.iteye.com/blog/2240577

    mybatis-generator-core-1.3.2

    MyBatis的代码自动生成的功能,可利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件。...包含mybatis-generator1.3.2的jar包、mysql数据库连接jar包、mybatis3.2.7.jar以及自动生成代码的配置文件模板。

    mybatis-generator-core-1.3.2(Mybatis中自动生成代码)

    利用mybatis-generator-core-1.3.2,自动生成代码; 包含generator.xml、mybatis-generator-core-1.3.2.jar、mysql-connector-java-5.1.26.jar、和生成语句!

    Mybatis逆向生成工具mybatis-generator-core-1.3.2.jar包

    利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件,将生成的代码copy到项目工程中即可。

    mybatis-generator-core 自动生成代码

    MyBatis属于一种半自动的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件。这样可以省去很多的功夫,将生成的...

    mybatis-generator 代码生成工具

    mybatis-generator 代码生成工具,可让MyBatis的代码自动生成,由于MyBatis属于一种半自动的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生成器自动生成...

    mybatis-generator-core-1.3.2反向生成Java代码

    由于MyBatis属于一种半自动的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件。

    mybatis-generator

    mybatis逆向工程,自动化代码生成,mybatis-generator

    mybatis-generator-1.3.5.zip

    这两天需要用到MyBatis的代码自动生成的功能,由于MyBatis属于一种半自动的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生成器自动生成实体类、DAO接口和...

    mybatis-generator-core-1.3.2.zip

    使用MyBatis需要创建mapper、DAO等,手工写十分不方便,这里提供了一个利用xml配置文件,就可以自动生成MyBatis Generator自动创建DAO、Mapper、entity代码的方式,十分方便

    MyBatis-Generator-Code-Tools

    利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件。省时省力,将生成的代码copy到项目工程中即可。

    mybatis-app.zip

    利用mybatis-generator自动生成代码,直接使用命令连接生成,无需加载任何插件和配置。。。。。。。

    SSM框架(IDEA+Spring+SpringMVC+Maven+Mybatis)

    SSM框架(IDEA+Spring+SpringMVC+Maven+Mybatis),搭建SSM框架,数据库采用MySQL数据库,利用MyBatis-generator 自动生成MyBatis代码

Global site tag (gtag.js) - Google Analytics