文档章节

SSM框架——使用MyBatis Generator自动创建代码

肖歌
 肖歌
发布于 2016/03/16 13:40
字数 611
阅读 236
收藏 3

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

           使用自动生成有很多方式,可以在eclipse中安装插件,但是以下将要介绍的这种方式我认为很轻松,最简单,不需要装插件,只需要下几个jar包即可,把它们放在一个目录下面。


       生成代码需要的文件和jar包:


(上图文件下载地址:http://download.csdn.net/detail/u012909091/7206091

       其中有mybatis框架的jar包,数据库驱动程序jar包以及MyBatis生成器jar包。其中的generatorConfig.xml是需要我们来配置的文件,配置如下:


[html]   view plain  copy
<EMBED id=ZeroClipboardMovie_1 height=14 name=ZeroClipboardMovie_1 type=application/x-shockwave-flash align=middle pluginspage=http://www.macromedia.com/go/getflashplayer width=29 src=http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf wmode="transparent" flashvars="id=1&width=29&height=14" allowfullscreen="false" allowscriptaccess="always" bgcolor="#ffffff" quality="best" menu="false" loop="false">
 print ? 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="UTF-8"?>    
  2. <!DOCTYPE generatorConfiguration    
  3.   PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"    
  4.   "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">    
  5. <generatorConfiguration>    
  6. <!-- 数据库驱动-->    
  7.     <classPathEntry  location="mysql-connector-java-5.1.25-bin.jar"/>    
  8.     <context id="DB2Tables"  targetRuntime="MyBatis3">    
  9.         <commentGenerator>    
  10.             <property name="suppressDate" value="true"/>    
  11.             <!-- 是否去除自动生成的注释 true:是 : false:否 -->    
  12.             <property name="suppressAllComments" value="true"/>    
  13.         </commentGenerator>    
  14.         <!--数据库链接URL,用户名、密码 -->    
  15.         <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://125.221.1.1/db_124" userId="dem" password="dem">    
  16.         </jdbcConnection>    
  17.         <javaTypeResolver>    
  18.             <property name="forceBigDecimals" value="false"/>    
  19.         </javaTypeResolver>    
  20.         <!-- 生成模型的包名和位置-->    
  21.         <javaModelGenerator targetPackage="test.domain" targetProject="src">    
  22.             <property name="enableSubPackages" value="true"/>    
  23.             <property name="trimStrings" value="true"/>    
  24.         </javaModelGenerator>    
  25.         <!-- 生成映射文件的包名和位置-->    
  26.         <sqlMapGenerator targetPackage="test.mapping" targetProject="src">    
  27.             <property name="enableSubPackages" value="true"/>    
  28.         </sqlMapGenerator>    
  29.         <!-- 生成DAO的包名和位置-->    
  30.         <javaClientGenerator type="XMLMAPPER" targetPackage="test.IDao" targetProject="src">    
  31.             <property name="enableSubPackages" value="true"/>    
  32.         </javaClientGenerator>    
  33.         <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->    
  34.         <table tableName="user_info_t" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>  
  35.     </context>    
  36. </generatorConfiguration>    


       当以上这些完成之后,只需要打开控制台,进入lib目录下,执行脚本:

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

       即可。


      这样在生成之后,就可以在src目录下找到相应的文件夹,每个表格都会对应三个文件(实体类、接口、配置文件)。

© 著作权归作者所有

共有 人打赏支持
肖歌
粉丝 1
博文 22
码字总数 26869
作品 0
福州
私信 提问

暂无文章

ConcurrentHashMap 高并发性的实现机制

ConcurrentHashMap 的结构分析 为了更好的理解 ConcurrentHashMap 高并发的具体实现,让我们先探索它的结构模型。 ConcurrentHashMap 类中包含两个静态内部类 HashEntry 和 Segment。HashEnt...

TonyStarkSir
今天
3
0
大数据教程(7.4)HDFS的java客户端API(流处理方式)

博主上一篇博客分享了namenode和datanode的工作原理,本章节将继前面的HDFS的java客户端简单API后深度讲述HDFS流处理API。 场景:博主前面的文章介绍过HDFS上存的大文件会成不同的块存储在不...

em_aaron
昨天
2
0
聊聊storm的window trigger

序 本文主要研究一下storm的window trigger WindowTridentProcessor.prepare storm-core-1.2.2-sources.jar!/org/apache/storm/trident/windowing/WindowTridentProcessor.java public v......

go4it
昨天
6
0
CentOS 生产环境配置

初始配置 对于一般配置来说,不需要安装 epel-release 仓库,本文主要在于希望跟随 RHEL 的配置流程,紧跟红帽公司对于服务器的配置说明。 # yum update 安装 centos-release-scl # yum ins...

clin003
昨天
9
0
GPON网络故障处理手册

导读 为了方便广大网络工作者工作需要,特搜集以下GPON网络处理流程供大家学习参考。开始—初步定为故障—检查光纤状况—检查ONU状态--检查设备运行状态—检查设备数据配置—检查上层设备状态...

问题终结者
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部