专栏首页开发杂记使用MyBatis Generator自动创建代码

使用MyBatis Generator自动创建代码

最近开始接触MyBatis,都是手动创建的映射文件,后来才知道原来可以利用生成器自动生成实体类、DAO接口和Mapping映射文件,将生成的文件的拷贝到项目中,方便且不容易出错,感觉不错,整理一下,以备以后使用。

1、生成代码所需文件及jar包:

generatorConfig.xml是需要手动配置的文件。jar包分别是MyBatis框架jar包,数据库驱动程序jarMybatis生成器jar。新建一个空的文件夹,将以上文件放入即可。 2、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="D:\rep\mysql\mysql-connector-java\5.1.19\mysql-connector-java-5.1.19.jar" /> -->  
<!-- 数据库驱动 -->
 <classPathEntry location="C:\Users\xieshuang\Desktop\auto_create_mybatis\ojdbc14-0.1.jar" />  
<context id="DB2Tables" targetRuntime="MyBatis3">  
    <commentGenerator>  
        <!-- 是否去除自动生成的注释 true:是 : false:否 -->
        <property name="suppressAllComments" value="true" />  
        <property name="suppressDate" value="true" />   
    </commentGenerator>  

    <!--数据库链接URL,用户名、密码 --> 
    <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@192.168.16.211:1521:bmesdb" userId="mds_user" password="mds_user" />  

    <javaTypeResolver>  
        <property name="forceBigDecimals" value="false" />  
        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer true,把JDBC DECIMAL 和 NUMERIC 类型解析为java.math.BigDecimal -->  
    </javaTypeResolver>  

    <!-- 生成模型的包名和位置--> 
    <javaModelGenerator targetPackage="com.broadtext.rms.customer" targetProject="src">  
        <property name="enableSubPackages" value="true" />  
        <property name="trimStrings" value="true" />  
    </javaModelGenerator>  

    <!-- 生成映射文件的包名和位置-->
    <sqlMapGenerator targetPackage="com.broadtext.rms.customer" targetProject="src">  
        <property name="enableSubPackages" value="false" />  
    </sqlMapGenerator>  

    <!-- 生成DAO的包名和位置-->
    <javaClientGenerator targetPackage="com.broadtext.rms.customer" targetProject="src" type="XMLMAPPER">  
        <property name="enableSubPackages" value="false" />  
    </javaClientGenerator>  

    <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名--> 
    <table tableName="tm_company" domainObjectName="TmCompany" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
        <!-- <generatedKey column="ID" sqlStatement="oracle" identity="true" /> -->  
    </table>  
</context>  
</generatorConfiguration>  

3、生成代码

打开控制台,进入文件夹目录下,运行命令

Java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite

运行成功,即可在src目录下看到对应的文件夹,每个表格都会对应三个文件(实体类、接口、配置文件)。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 利用mybatis-generator自动生成代码

    <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-...

    用户5640963
  • mybatis插入数据后返回自增主键ID详解

    ​ 开发过程中我们经常性的会用到许多的中间表,用于数据之间的对应和关联.这个时候我们关联最多的就是ID,我们在一张表中插入数据后级联增加到关联表中.我们熟知...

    Dream城堡
  • Spring Session工作原理

    HTTP协议本身是无状态的,为了保存会话信息,浏览器Cookie通过SessionID标识会话请求,服务器以SessionID为key来存储会话信息。在单实例应...

    2020labs小助手
  • 使用Nexus搭建Maven服务器详细配置

    为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网 里找一台有外网权限的...

    用户5640963
  • Jquery Ajax请求文件下载操作失败的原因分析及解决办法

    jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯。

    用户5640963
  • 【三剑客之一】Dubbo 遇到初恋

    很多时候,其实我们使用这个技术的时候,可能都是因为项目需要,所以,我们就用了,但是,至于为什么我们需要用到这个技术,可能自身并不是很了解的,但是,其实了解技术的...

    好好学java
  • shiro的Cache机制

    Shiro开发团队明白在许多应用程序中性能是至关重要的。Caching 是Shiro 中的一个重要功能,以确保安全操作保持尽可能的快。

    用户5640963
  • XSS相关Payload及Bypass的备忘录(上)

    跨站脚本攻击(XSS)是一种计算机安全漏洞,通常出现在Web应用程序中。这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当正常用户访问该页面时...

    7089bAt@PowerLi
  • 1000个常用的Python库和示例代码

    下面是programcreek通过分析大量开源代码,提取出的最常用的python库。

    用户4962466
  • Spring知识整合 —— Spring概述篇

    Spring 是一个轻量级的Java 企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Sprin...

    Leorizon

扫码关注云+社区

领取腾讯云代金券