基于各种原因,老大突然提出“以后的项目全部用mybatis代替hibernate”的要求。
咱也没什么说的,谁让别人是老大的,那话就是圣旨了。
于是,又开始了hello world……(只用过ibatis,还好变化不是很多)。
尽管很方便,但是却让人很蛋疼!!那xml映射、mapper接口等,太繁琐了。。官方提供的generator又是基于命令行的,非常不方便。
终于,某个夜晚,我给自己做了个简单的插件,算是为以后较少点机械工作吧。
在这里也同时共享给各位同行,如有不足或错误的地方,还请指教更正。
有图有真相,大家可以先预览一下效果(界面上比较粗糙,见笑了。)
1.新建项目,并配置xml文件(这个文件基本上与mybatis-generator中的一样,稍微有不同):
- <?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="F:\mysql-connector-java-5.1.16-bin.jar" /><!--驱动包的绝对路径-->
- <context id="DB2Tables" targetRuntime="MyBatis3"><!--生成映射的类型,也可以生成ibatis的。具体参看mybatis-generator-->
- <commentGenerator><!--具体参看mybatis-generator-->
- <property name="suppressDate" value="true" />
- </commentGenerator>
- <jdbcConnection driverClass="com.mysql.jdbc.Driver"
- connectionURL="jdbc:mysql://localhost:3306/p0"
- userId="root" password="root"><!--数据库连接信息。具体参看mybatis-generator-->
- </jdbcConnection>
- <javaTypeResolver><!--具体参看mybatis-generator-->
- <property name="forceBigDecimals" value="false" />
- </javaTypeResolver>
- <!--以下三个标签主要解析targetPackage和targetProject。其它的具体参看mybatis-generator-->
- <!--targetPackage,是生成文件所在的包路径-->
- <!--targetProject,是相对于本xml配置文件的相对路径,是targetPackage包路径的父级目录。-->
- <javaModelGenerator targetPackage="test.model"
- targetProject="">
- <property name="enableSubPackages" value="true" />
- <property name="trimStrings" value="true" />
- </javaModelGenerator>
- <sqlMapGenerator targetPackage="test.dao.mapper"
- targetProject="">
- <property name="enableSubPackages" value="true" />
- </sqlMapGenerator>
- <javaClientGenerator type="XMLMAPPER"
- targetPackage="test.dao.java" targetProject="">
- <property name="enableSubPackages" value="true" />
- </javaClientGenerator>
- <!--与原来mybatis-generator不一样,这个table标签不是必须的。只有对生成的映射有复杂要求时,才需要在这里详细配置-->
- <!--
- <table tableName="MYTABLE" schema="MYSCHEMA">
- <ignoreColumn column="fred"/>
- <columnOverride column="BEG_DATE" property="startDate"/>
- </table>
- -->
- </context>
- </generatorConfiguration>
2.操作菜单:
3.弹出本对话框,列表中显示了当前连接的数据库的所有表。从中选择你需要生成映射的表,点击OK。
4.看看控制台输出:
5.看看工程目录,成功了(别紧张,报错只是这个项目没有导入mybatis等包而已)
转载请注明出处。需要修改源码并传播的,请连接本博文(http://blog.csdn.net/fu9958/article/details/7521681)。
基于eclipse的mybatis映射代码自动生成的插件http://blog.csdn.net/fu9958/article/details/7521681的更多相关文章
-
基于eclipse的mybatis映射代码自动生成的插件
基于eclipse的mybatis映射代码自动生成的插件 分类: JAVA 数据库 工具相关2012-04-29 00:15 2157人阅读 评论(9) 收藏 举报 eclipsegeneratori ...
-
使用Mybatis进行连表查询、left join---https://blog.csdn.net/jinzhencs/article/details/51980518
使用Mybatis进行连表查询.left join https://blog.csdn.net/jinzhencs/article/details/51980518
-
转-spring-boot 注解配置mybatis+druid(新手上路)-http://blog.csdn.net/sinat_36203615/article/details/53759935
spring-boot 注解配置mybatis+druid(新手上路) 转载 2016年12月20日 10:17:17 标签: sprinb-boot / mybatis / druid 10475 ...
-
自动车牌识别(ALPR)---https://blog.csdn.net/ELEVEN_ZOU/article/details/80893579
1.基本功能:从一张或者一系列的图片中提取车牌信息,比如车牌号码.车牌颜色等信息. 2.功能扩展:车型.车品牌.车牌类型等. 3.应用方向:电子交易系统(停车自动收费.收费站自动支付等).交通执法.交 ...
-
myeclipse通过数据表生成jpa或hibernate实体---https://blog.csdn.net/partner4java/article/details/8560289
myeclipse通过数据表生成jpa或hibernate实体-----https://blog.csdn.net/partner4java/article/details/8560289
-
java 生成20位唯一ID,生成不会重复的20位数字----https://blog.csdn.net/weixin_36751895/article/details/70331781
java 生成20位唯一ID,生成不会重复的20位数字----https://blog.csdn.net/weixin_36751895/article/details/70331781
-
码云私人代码 SSH 设置----https://blog.csdn.net/kkaazz/article/details/78667573
码云私人代码 SSH 设置 https://blog.csdn.net/kkaazz/article/details/78667573
-
Mybatis Generator代码自动生成(实体类、dao层、映射文件)
写了一段时间增删改查有点厌烦,自己找了下网上的例子鼓捣了下自动生成. 首先得有一个配置文件: generatorConfig.xml <?xml version="1.0" ...
-
Py福利,基于uiautomatorviewer 的Python 自动化代码自动生成工具分享(jar已发布GitHub,欢迎Star)
前言做UI自动化无论你用SDK自带的uiautomatorviewer还是Macaca还是Appium自动的inspector,代码最多的就是那些繁琐重复的找元素后点击,输入,长按.....等.现在偷 ...
随机推荐
-
微信网页版APP - 网页微信客户端电脑版体验
微信网页版很早就出来了,解决了很多人上班不能玩手机的问题.微信电脑版-网页微信客户端,直接安装在桌面的微信网页版,免去了开浏览器的麻烦.双击就启动了,和其他的应用程序一样:运行过程中可以隐藏在桌面右下 ...
-
jquery写简单的div切换
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
-
Linux运行等级,根目录,文件类型etc
Linux的Runlevel Linux默认有6个Terminal(Ctrl+Alt+F1~F6)和1个X window(Ctrl+Alt+F7,图形化界面)让用户登录 Linux的runlevel一 ...
-
TCP/IP详解 笔记十一
域名服务系统(DNS) DNS:名字到IP转换:电子邮件选路信息:分布式数据库 解析器:是通过gethostbyname(3)和gethostbyaddr(3)来实现的 最常用的名字服务器是BIND ...
-
WinForm中跨线程操作控件
在WinForm编程时会遇到通过后台线程操作界面的情况,直接在后台线程执行的方法中直接操作控件会报错,这时候就要使用跨线程方式间接操作控件.下面是两种实现方式. 1.采用定义delegate的方式 ...
-
js apply/call/caller/callee/bind使用方法与区别分析
一.call 方法 调用一个对象的一个方法,以另一个对象替换当前对象(其实就是更改对象的内部指针,即改变对象的this指向的内容). Js代码 call([thisObj[,arg1[, arg2[, ...
-
UVa 10318 Security Panel
题意:给你一个3*3的翻转模版,深色部分表示翻转,浅色部分不变.然后你可以在r*c的矩形里依照模版进行翻转,要求所有点亮所有块.输出最小的步骤. 思路:有一点比较好想.每个块至多被翻转一次,翻两次的效 ...
-
8.4c#递归
一.概念conception: 函数体内调用本函数自身,直到符合某一条件不再继续调用. 二.应满足条件factor: (1)有反复执行的过程(调用自身): (2)有跳出反复执行过程的条件(函数出口) ...
-
基于Axis1.4的webservice接口开发(接口调用)
基于Axis1.4的webservice接口开发(接口调用) 一.webservice接口代码参考上一篇博客: http://www.cnblogs.com/zhukunqiang/p/7125668 ...
-
pandas 去除NAN
df = df.dropna(axis=0, how='any')