国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html
内部邀请码:C8E245J (不写邀请码,没有现金送)
国内私募机构九鼎控股打造,九鼎投资是在全国股份转让系统挂牌的公众公司,股票代码为430719,为“中国PE第一股”,市值超1000亿元。 
------------------------------------------------------------------------------------------------------------------------------------------------------------------

如果你使用过hibernate的eclipse插件自动创建DAO文件,那么就容易理解下面介绍的内容;如果你还没有用过hibernate也无妨。下面介绍使用mybatis 3的eclipse插件自动生成相关文件以及如何使用这些文件。

eclipse插件安装地址:http://mybatis.googlecode.com/svn/sub-projects/generator/trunk/eclipse/UpdateSite/

附件有link安装包,link安装方式参考http://maimode.iteye.com/admin/blogs/1164524

MyBatis Generator详细介绍参见:http://code.google.com/p/mybatis/wiki/Generator

安装插件的过程就不说了,安装完后,eclipse中File-》new-》other中会发现多了mybatis选项说明插件安装成功。

如何使用插件

在任意项目中利用上图中的向导创建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="y:\\workspace\pojo\WebContent\WEB-INF\lib\ojdbc14.jar"
/> -->
<classPathEntry
location="e:\\pojo\WebContent\WEB-INF\lib\mysql-connector-java-5.1.26-bin.jar" />
<context id="Oracle" targetRuntime="MyBatis3">
<!-- 开启注释 -->
<commentGenerator>
<property name="suppressAllComments" value="false" />
</commentGenerator> <!-- 数据库连接 -->
<!-- connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:orcl" userId="orcl"
password="orcl"> -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/test" userId="root"
password="">
</jdbcConnection> <!--允许数值类型转换成不同类型,否则都映射为BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver> <!-- 模型文件 -->
<javaModelGenerator targetPackage="cn.com.sgcc.model"
targetProject="webserver/src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator> <!-- XML映射文件 -->
<sqlMapGenerator targetPackage="com.my.xml"
targetProject="webserver/src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator> <!-- DAO文件(mapper接口) -->
<javaClientGenerator targetPackage="com.my.dao"
targetProject="webserver/src" type="XMLMAPPER">
<property name="enableSubPackages" value="true" />
</javaClientGenerator> <!-- 数据库表 -->
<!-- <table tableName="T_USER" domainObjectName="User">
<property name="useActualColumnNames" value="false" />-->
<!-- <generatedKey column="ID" sqlStatement="DB2" identity="true" /> <columnOverride
column="DATE_FIELD" property="startDate" /> <ignoreColumn column="FRED" />
<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" /> -->
<!-- </table> --> <table tableName="T_USERDETAIL" domainObjectName="UserDetail">
<!-- useActualColumnNames属性是为了使生成的model字段与数据库的字段大小写不一致 -->
<property name="useActualColumnNames" value="false" />
</table> </context>
</generatorConfiguration>

根据名称应该能才出来大致的意思。

配置好连接数据库及表的信息后就可以利用插件自动生成代码了。

点击上图中的选项,如果配置正确,便自动创建相关文件了。

文件主要有三类:

client包,mapper 接口文件

model包,实体bean文件

mapper包,mapper xml文件

如何使用这些自动生成的文件

首先需要将mapper包下的xml文件添加到mybatis的sqlmapper文件中

然后程序中这样使用:

  1. public List<TrackBean> selectTrackOnRoute(String routeName) {
  2. List<TrackBean> rt = null;
  3. SqlSession session = null;
  4. try {
  5. session = sqlSessionFactory.openSession();
  6. AtfmTrackMapper mapper = session.getMapper(AtfmTrackMapper.class);
  7. // 构造查询条件
  8. AtfmTrackExample example = new AtfmTrackExample();
  9. example.createCriteria()
  10. .andRouteIs(routeName);
  11. // 查询
  12. List<AtfmTrack> list = mapper.selectByExample(example);
  13. // 包装成TrackBean
  14. rt = this.toTrackBean(list);
  15. } catch (Exception e) {
  16. e.printStackTrace();
  17. logger.error(e.getMessage());
  18. } finally {
  19. if (session != null)
  20. session.close();
  21. }
  22. return rt;
  23. }

如果where条件比较复杂,还可以自定义查询条件,如上例中andRouteIs(routeName)就是自定义的查询条件。可以在

具体的Example的内部类Criteria中自定义查询条件:

  1. public Criteria andRouteIs(String routeName){
  2. StringBuffer sb = new StringBuffer("point_name in " +
  3. "(select p.point from route_point p where p.route = '" + routeName + "') " +
  4. "AND FLIGHT_NO IN " +
  5. "(select D.FLIGHT_NO from syn_aftn_dynamic_recent d " +
  6. "where d.route like '%" + routeName + "%')");
  7. addCriterion(sb.toString());
  8. return this;
  9. }

我们可能会担心一旦重新执行generate的时候,我们自己编写的代码会不会丢失,不会的,插件不会修改或丢弃我们自己编写的代码

一旦掌握了插件如何使用,重要的工作就是如何使用XXXExample类了。这种方式,完全不用编写繁琐的mapper xml文件。

eclipse mybatis Generator的更多相关文章

  1. Eclipse MyBatis Generator插件安装

    目录 Eclipse MyBatis Generator插件安装 Eclipse MyBatis Generator插件安装 1.进入Eclipse Marketplace [Help] -> ...

  2. Eclipse MyBatis generator 1.3.7插件的核心包(中文注释)

    一.最近刚搭建一个项目框架,使用springboot + mybatis,但是在使用Eclipse开发时发现开发mybatis的Dao.mapper.xml和entity时特别不方便,手工去写肯定是不 ...

  3. Eclipse 使用mybatis generator插件自动生成代码

    Eclipse 使用mybatis generator插件自动生成代码 标签: mybatis 2016-12-07 15:10 5247人阅读 评论(0) 收藏 举报 .embody{ paddin ...

  4. mybatis generator eclipse插件的安装

    mybatis generator 可以提高开发速度,这个插件可以自动生成代码,创建DAO层相关代码,就像利用HIbernate反相生成一样,安装前可以先到百度网盘下载: 文件:MyBatisGene ...

  5. MyBatis Generator For Eclipse 插件安装

    由于在ORM框架MyBatis中,实现数据表于JavaBean映射时,配置的代码比较的复杂,所以为了加快开发的效率,MyBatis官方提供了一个Eclipse的插件, 我izuoyongjiushis ...

  6. Eclipse插件:mybatis generator的使用步骤

    一.首先,安装eclipse插件 Help--Eclipser Marketplace中查找:Mybatis Generator 1.3.5安装 二.新建project New--other--查找如 ...

  7. eclipse在线安装mybatis generator插件

    转自:http://blog.csdn.net/u012283609/article/details/67640433 安装步骤: 打开eclipse菜单栏help–>Eclipse Marke ...

  8. eclipse中mybatis generator插件的安装与使用,实现自动生成代码

    git地址:https://github.com/mybatis/generator 下载后解压: 选择任意一个版本的jar放到eclipse的features目录下即可 选择任意一个版本的jar放到 ...

  9. 2016.7.12 eclipse和IDEA中mybatis generator插件的安装与使用

    Eclipse中的安装 http://jingyan.baidu.com/article/9faa7231506ed8473c28cbee.html 1.下载插件 2.将插件generator的fea ...

随机推荐

  1. 转一贴,今天实在写累了,也看累了--【Python异步非阻塞IO多路复用Select/Poll/Epoll使用】

    下面这篇,原理理解了, 再结合 这一周来的心得体会,整个框架就差不多了... http://www.haiyun.me/archives/1056.html 有许多封装好的异步非阻塞IO多路复用框架, ...

  2. CF192div2-330B - Road Construction

    题意:给定n个城市并建造马路是的两两到达,且距离不能超过2 因为0<=m<n/2,所以必然存在某个城市是无限制的,那就可以以这个无限制的城市为中心建造.... 只要想通了真尼玛简单.... ...

  3. 一个字 word 是16位, 一个字由两个字节组成 , 字节=byte ,一个字节8位, 位=bit 如果没有特殊说明kb 就是指 k*bit

    一个字 word 是16位, 一个字由两个字节组成 , 字节=byte,,一个字节8位, 位=bit 如果没有特殊说明kb 就是指 k*bit kbyte= k*byte

  4. Yii CDbCriteria

    Yii的Active Recorder包装了很多. 特别是把SQL中 把where,order,limit,IN/not IN,like等常用短句都包含进CDbCriteria这个类中去,这样整个代码 ...

  5. NTP 服务器配置

    1.yum安装ntp 1 yum install ntp* 2.更新时间 1 ntpdate 202.120.2.101 3.加入任务计划 1 2 crontab -e */10 * * * * nt ...

  6. C# 操作 Word 修改word的高级属性中的自定义属性2

    word的类库使用的是word2007版本的类库,类库信息见下面图片,折腾了半天,终于找到入口,网上 很多说的添加或者修改word的高级属性中的自定义属性都是错误的,感觉都是在copy网上的代码,自己 ...

  7. UVA 11426 GCD - Extreme (II) 欧拉函数

    分析:枚举每个数的贡献,欧拉函数筛法 #include <cstdio> #include <iostream> #include <ctime> #include ...

  8. [Jacky] 解决Ext.Net GridPanel 选择的行数据刷新后不能获取最新值

    选择GridPanel中一行数据,当变更数据时并重新刷新之后不能获取最新值,需通过如下方式获取: var internalId = gridPanel.getSelectionModel().getL ...

  9. powershell学习

    PowerShell 调试器 在开始运行处,输入powershell ISE回车即可 PowerShell 与操作系统版本 powershell在windows server 2008上自带,但最好在 ...

  10. 使用vxsim(一)

    新建download工程 选择toolchain 这里选SIMNTgnu是为了在vxsim中能下载编译的.o文件 如果是为了下载到visualbox或者vmware中的vxworks,则toolcha ...