论坛首页 Java企业应用论坛

MiniDao持久层 Vs Mybatis

浏览 10855 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2013-09-09  


MiniDao
简介及特征

 

MiniDaoJeecg自己的持久化解决方案,集成Hibernate实体维护和Mybaits SQL分离的两大优点。具有以下特征 

 

l   O/R mapping不用设置xml,零配置便于维护

不需要了解JDBC的知识

l   SQL语句和java代码的分离

可以自动生成SQL语句

l   接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法

l   对应的SQL。它会通过AOP自动生成实现类

l   支持自动事务处理和手动事务处理

l   支持与hibernate轻量级无缝集成

MiniDao整合Hibernate+mybatis的两大优势,支持实体维护和SQL分离SQL支持脚本语言

l   Sql 性能优于Mybatis
※向下兼容Hibernate实体维护方式,实体的增删改查SQL自动生成

 

 

&Vs Mybatis

 

相同点:

l  SQL语句和java代码的分离

不同点:

l  O/R mapping不用设置xml,零配置,简单易用

l  可以自动生成SQL语句

l  接口和实现分离,不用写持久层代码,用户只需写接口,以及某些接口方法对应的SQL。它会通过AOP自动生成实现类

l  支持与hibernate轻量级无缝集成

l  SQL支持更强大的脚本语言,可以写逻辑处理

l  Sql 性能优于Mybatis

l  Sql支持传递多个参数Map/Object/List/包装类型都可以

Mybatis只支持一个参数<Map/Object>

 

 

 

SQL性能对比

(MiniDao  SQL内容采用文件存储)

MiniDao Sql 耗时: 54 毫秒(SQL模板第一从文件读取,第二次从缓存读取)方法第一次执行的时候加载sql到缓存里

MiniDao Sql 耗时: 4 毫秒

MiniDao Sql 耗时: 4 毫秒

MiniDao Sql 耗时: 5 毫秒

(MiniDao  SQL内容采用@Sql标签)

MiniDao Sql 耗时: 6 毫秒

MiniDao Sql 耗时: 1 毫秒

MiniDao Sql 耗时: 1 毫秒

MiniDao Sql 耗时: 2 毫秒

 (Mybatis在Sesion 初始化的时候,加载Xml到缓存里,所以第一执行比MiniDao快)

Mybatis Sql 耗时: 18 毫秒   Mybatis Session初始化的时候,加载Xml到缓存里

Mybatis Sql 耗时: 6 毫秒

Mybatis Sql 耗时: 5 毫秒

Mybatis Sql 耗时: 9 毫秒

 (Springjdbc)

Springjdbc Sql 耗时: 10 毫秒

Springjdbc Sql 耗时: 1 毫秒

Springjdbc Sql 耗时: 1 毫秒

Springjdbc Sql 耗时: 1 毫秒

 

 

技术网站:www.jeecg.org

   发表时间:2013-09-11  
写道
| SQL支持更强大的脚本语言,可以写逻辑处理
l Sql 性能优于Mybatis
l Sql支持传递多个参数Map/Object/List/包装类型都可以
Mybatis只支持一个参数<Map/Object>

 

没用过MiniDao,但对上述描述不敢苟同(有夸大宣传的嫌疑)!

 

① Mybatis的XML映射文件支持velocity模板写法,不知道你们的脚本是否比velocity来得强大,很怀疑!

 

② Mybatis可以支持多个参数,可以通过使用@Param注解实现!如果你们连这点都不知道的话,还谈何跟MyBatis比较!

 

 

 

 

 

 

0 请登录后投票
   发表时间:2013-09-12  
首先,对耕耘一款软件的同袍表示支持。
然后,建议更大的实质性创新,不要说不可能,要敢于挑战权威,正确早日做出各方面都比MyBatis优秀的持久层框架。
0 请登录后投票
   发表时间:2013-09-12  
最后,jeecg建议不要用jQuery EasyUI,因为:
1、如果你要用它最新版本,则必须使用jquery2.x,jquery 2.x原生不支持IE8,现在n多客户用得就是IE8.

2、如果你用低版本的jquery easy ui,则它不支持jquery 1.9.x以后的版本,你无法使用jquery的最新特性和bug改善。

不能为了easy ui,而导致jquery停留在原始状态,over。
0 请登录后投票
   发表时间:2013-09-12  
一直都在使用Springjdbc!
如果你非要搞个把sql分离到独文件的话,在使用Springjdbc下,我用velocity就可以做到像mybatis那样把sql分离出来,也支持动态条件。

纯支持了。如果是正规项目,我个人还是会选择spring mybatis或hibernate这些经过考验的东西。有时候,一点点的性能差异并不具有特别大的说服力。尤其是要说服项目经理或客户。
0 请登录后投票
   发表时间:2013-09-13  
youarestupid 写道
最后,jeecg建议不要用jQuery EasyUI,因为:
1、如果你要用它最新版本,则必须使用jquery2.x,jquery 2.x原生不支持IE8,现在n多客户用得就是IE8.

2、如果你用低版本的jquery easy ui,则它不支持jquery 1.9.x以后的版本,你无法使用jquery的最新特性和bug改善。

不能为了easy ui,而导致jquery停留在原始状态,over。



EasyUI最新版本是可以使用jQuery1.8.3的
也就是EasyUI1.3.4+jQuery1.8.3可以满足任何浏览器。。
0 请登录后投票
   发表时间:2013-09-13   最后修改:2013-09-13
sphsyv23 写道
youarestupid 写道
最后,jeecg建议不要用jQuery EasyUI,因为:
1、如果你要用它最新版本,则必须使用jquery2.x,jquery 2.x原生不支持IE8,现在n多客户用得就是IE8.

2、如果你用低版本的jquery easy ui,则它不支持jquery 1.9.x以后的版本,你无法使用jquery的最新特性和bug改善。

不能为了easy ui,而导致jquery停留在原始状态,over。



EasyUI最新版本是可以使用jQuery1.8.3的
也就是EasyUI1.3.4+jQuery1.8.3可以满足任何浏览器。。

但是最新的1系列jQuery版本是1.10.2
0 请登录后投票
   发表时间:2013-09-13  
youarestupid 写道
sphsyv23 写道
youarestupid 写道
最后,jeecg建议不要用jQuery EasyUI,因为:
1、如果你要用它最新版本,则必须使用jquery2.x,jquery 2.x原生不支持IE8,现在n多客户用得就是IE8.

2、如果你用低版本的jquery easy ui,则它不支持jquery 1.9.x以后的版本,你无法使用jquery的最新特性和bug改善。

不能为了easy ui,而导致jquery停留在原始状态,over。



EasyUI最新版本是可以使用jQuery1.8.3的
也就是EasyUI1.3.4+jQuery1.8.3可以满足任何浏览器。。

但是最新的1系列jQuery版本是1.10.2



不管你是几系列的,要想easyui兼容ie6+和其他浏览器,那么你就用jquery1.8.3足够。easyui官方一直用jquery1.8.3的。
总之,easyui是可以兼容任何浏览器的。jquery1.8.3这个版本已经够用了,升级那么高干嘛,除非你客户没有IE6的。
0 请登录后投票
   发表时间:2013-09-13  
除了一般的常用 框架,如hibernate\mybatis,springjdbc。还有个工具类dbutils也很不错。框架太多,学不过来。适用就好!
0 请登录后投票
   发表时间:2013-09-16  
要有创新,才有发展,支持一个
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics