ibator替代工具mybatis Generator,在做web开发的时候,为了更加的专注于业务逻辑,诞生了很多的orm框架,在工作中为了提高开发效率,我们就会使用持久层代码自动生成工具,只要数据库提交创建好,插件就会帮我们生成大部分的文件,之前一直使用ibator,和abator 。ibator和abator都是针对ibatis开发的代码生成工具,现在ibatis迁移到了github上,同时改名为mybatis,ibator和abator的插件目前已经不再更新了,目前eclipse的部分版本已经不兼容ibator插件和abator了。然而针对于mybatis的代码自动生成也已经有了替换的工具mybatis Generator ,下面简要的介绍mybatis Generator 的使用方法。笔者目前是针对eclipse,mybatis Generator插件的版本是 1.3.5 ,而intelliJ Idea也可以安装mybatis插件。
<?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>
<context id="context1">
<jdbcConnection connectionURL="???" driverClass="???" password="???" userId="???" />
<javaModelGenerator targetPackage="???" targetProject="???" />
<sqlMapGenerator targetPackage="???" targetProject="???" />
<javaClientGenerator targetPackage="???" targetProject="???" type="XMLMAPPER" />
<table schema="???" tableName="???">
<columnOverride column="???" property="???" />
</table>
</context>
</generatorConfiguration>
这份原始配置文件缺少一项至关重要的标签<classPathEntry location="" /> ,这个标签跟<context/>标签同级。
<jdbcConnection/>这个标签不用多说,数据库连接相关配置
<javaModelGenerator/>生成java实体类对象,和相应的example文件
<sqlMapGenerator/> sqlMap映射文件
<javaClientGenerator/> java数据库持久层
<table schema="???" tableName="???">
<columnOverride column="???" property="???" />
</table>
这个是关于数据库表字段和属性对应相关的配置,如果不配置<columnOverride/>标签,那么就会生成全部字段,属性字段默认是数据库字段。
<targetPackage/>和<targetProject/>这两个标签很醒目了,目标包和目标项目,分别配置包的全路径,和工程名称就可以了。
如果想生成ibatis的配置文件,只需在一下两个标签内配置即可:
<context >标签,Optional Attributes 里面配置可选标签, 其中targetRuntime配置运行环境MyBatis3,Ibatis2Java2,Ibatis2Java5,MyBatis3Simple,默认的是mybatis3
<javaClientGenerator>标签,Required Attributes 要求属性,生成client文件的形式,如果是ibatis可以是GENERIC-CI,GENERIC-SI,IBATIS。
配置文件配置完成后保存,然后eclipse右键运行Generate mybatis插件即可
TestTableExample 为自动生成文件,
TestTableExample example = new TestTableExample();
example.createCriteria()
.andField1EqualTo(5)
.andField2IsNull();
example.or(example.createCriteria()
.andField3NotEqualTo(9)
.andField4IsNotNull());
List<Integer> field5Values = new ArrayList<Integer>();
field5Values.add(8);
field5Values.add(11);
field5Values.add(14);
field5Values.add(22);
example.or(example.createCriteria()
.andField5In(field5Values));
example.or(example.createCriteria()
.andField6Between(3, 7));
In the above example, the dynamically generated where clause will effectively be:
where (field1 = 5 and field2 is null)
or (field3 <> 9 and field4 is not null)
or (field5 in (8, 11, 14, 22))
or (field6 between 3 and 7);
使用的时候直接使用xxxDao.selectByExample(example);
并且支持order by 和distinct 。
更多用法参见http://www.mybatis.org/generator/generatedobjects/exampleClassUsage.html
yEclipse 2020-5-18发布
MyEclipse 2020-5-18发布了,此次新版本修复了:
同时,也有不少的升级,下面就来一一盘点下吧!
在这一版的MyEclipse中,升级了框架支持;Hibernate、JPA、Spring框架的项目的创建引导升级到了Hibernate 5.4、JPA 2.2和Spring 5.2;也就是说通过MyEclipse创建的maven项目,可以将项目框架最高依赖Hibernate 5.4、JPA 2.2和Spring 5.2自动添加到项目的pom文件中。
项目框架最高依赖Hibernate 5.4、JPA 2.2和Spring 5.2
除了之前提到的Spring 5.2之外,在这个版本中,MyEclipse还将Spring Tool Suite的集成从3.9.7更新到了3.9.12;这些更新为Spring Boot的支持带来了一些增强功能,如从运行中的Spring Boot应用中检查实时环境值的能力,以及对Beans选项卡的增强,使得可以在运行时自检Bean关系。
这些增强功能都可以在运行中的应用的属性视图中找到。
属性视图中的功能得到了增强
关于STS
在之前的MyEclipse版本中,STS 4会和MyEclipse发生冲突,而现在可以将STS 4安装到MyEclipse中,而不会发生冲突,同时,官方也在积极进行将STS 4整合到MyEclipse中的工作。
在这个新版的MyEclipse中,面板得到更新和简化,删除了之前版本中不使用的页面;简化后的面板简单、突出重点,而且是一个单一的标签页,其中只包含了搜索、学习文档和代码示例:
新的MyEclipse面板
众所周知,MyEclipse是基于Eclipse开发的,是在原生Eclipse的基础上拓展、集成了原本没有的功能,或者是对现有功能的增强之后得到的Java IDE。所以,MyEclipse的基础上还是Eclipse,二者也是有着极高的相似度,以至于很多开发的小伙伴都没能仔细分清楚。
此次的新版本将基础的Eclipse 更新到了2020-3;同时,也支持了Eclipse 2020-3中带来的新功能,比如:DALI和Web Tools项目,其中最大功能就是对Java 14的支持。
升级了基础的Eclipse
以下是一些亮点功能:
MyEclipse 曾经是我最喜欢的Java IDE,它的强大功能、丰富的插件集,智能代码提示一度让我认为他是最好的Java IDE。虽然现在已经不再使用,但对其依然是关注的,也希望MyEclipse 能够越来越好,同时,也希望MyEclipse的价格能够低一些,毕竟价格过高,不是每个人都能承受得起。
完结,老夫虽不正经,但老夫一身的才华!关注我,获取更多科技知识。
注开源中国OSC头条号,获取最新技术资讯
Eclipse 4.10 的新闻页面显示,Eclipse 4.10 计划将于2018年12月19日发布,按照官方的说法,该版本将提供完整的 JDK 11 支持。
下面是该版本中值得关注的一些条目:
可以看到,Eclipse 4.10 的 JDT 将完全支持 JDK 11,而 Eclipse compiler for Java (ECJ) 也实现了新的 Java 11 语言增强功能。
对于 Eclipse 编辑器方面的更新,官方表示将会放弃对 GTK 2 的支持。
点击“了解更多”,获取软件下载地址。
*请认真填写需求信息,我们会在24小时内与您取得联系。