论坛首页 Java企业应用论坛

每一个用mybatis的男纸,你伤不起

浏览 28415 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (13)
作者 正文
   发表时间:2011-06-08   最后修改:2011-06-08
楼主去看看最新的 mybatis 之后再说吧,由其是与 Spring 进行集成+注解方式。需要做的就是 写一个 SQL 就完了~ 这还不简单?
http://denger.iteye.com/blog/1060588
0 请登录后投票
   发表时间:2011-06-08  
白糖_ 写道
hibernate的效率让人堪忧,大量的反射封装加壳再加壳,已明显影响性能了。
但hibernate的hql是很好的东西,如果大家统一用hql编码,基本可实现更换数据库0代码修改。
mybatis的出发点不同吧,作者为了屏蔽jdbc大量的try..catch,开关连接,做了一个非常薄的jdbc封装,把sql写在统一的xml文件可以提高sql的复用和维护。
不过mybatis不太满意的是不直接支持第三方数据库连接池(不过可以自己写DataSourceFactory实现)。


说效率让人担忧就拿出测试报告,反射是没错,高版本JDK反射都做了优化,而且Hibernate都把Pojo class缓存了,反射影响性能何来这一说?
ibatis也没什么不对,存在即合理
0 请登录后投票
   发表时间:2011-06-08  
口水战。各有千秋而已。没必要去争论。无论是XML还是注解。看具体情况。ibatis我觉得只是对JDBC的封装,减少了重复率。至于实际的工作量,这个看具体项目情况
0 请登录后投票
   发表时间:2011-06-08  
我们项目页面类似报表,往往需要连接10+个表,20左右的查询条件,基本是写好SQL语句COPY到XML,感觉用起来比较灵活
0 请登录后投票
   发表时间:2011-06-08  
MyBatis相对于JDBC来说没有减少工作量,减少代码行数也不是MyBatis的目标,MyBatis的作用是:
在性能上与原生JDBC接近的情况下,实现SQL语句和程序逻辑的彻底分离;
实现SQL查询出的ResultMap和实体类的映射;
实现SQL语句的非法字符(如SQL注入攻击)的过滤;
0 请登录后投票
   发表时间:2011-06-08  
GavinHwa 写道
myBatis3.x可以直接使用mapper来实现吧,xml文件都能省了,如果有需要自己再写个代码生成工具,直接生成myBatis可用的DAO和Mapper也未尝不可啊!



试试这里有个在线生成器

 

0 请登录后投票
   发表时间:2011-06-08  
一句话,偏见源于无知
0 请登录后投票
   发表时间:2011-06-08  
GavinHwa 写道
myBatis3.x可以直接使用mapper来实现吧,xml文件都能省了,如果有需要自己再写个代码生成工具,直接生成myBatis可用的DAO和Mapper也未尝不可啊!


兄台指的是注解么?
0 请登录后投票
   发表时间:2011-06-08  
denger 写道
楼主去看看最新的 mybatis 之后再说吧,由其是与 Spring 进行集成+注解方式。需要做的就是 写一个 SQL 就完了~ 这还不简单?
http://denger.iteye.com/blog/1060588



我当然知道,但是最基本的增删改查都要写sql对不对。
而且关联查询的话,又要写一条sql。
0 请登录后投票
   发表时间:2011-06-08  
白糖_ 写道
hibernate的效率让人堪忧,大量的反射封装加壳再加壳,已明显影响性能了。
但hibernate的hql是很好的东西,如果大家统一用hql编码,基本可实现更换数据库0代码修改。
mybatis的出发点不同吧,作者为了屏蔽jdbc大量的try..catch,开关连接,做了一个非常薄的jdbc封装,把sql写在统一的xml文件可以提高sql的复用和维护。
不过mybatis不太满意的是不直接支持第三方数据库连接池(不过可以自己写DataSourceFactory实现)。


开关连接不是连接池在做的事情么。jdbc不也可以用连接池
0 请登录后投票
论坛首页 Java企业应用版

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