iBATIS还是Hibernate hibernate比较成熟,而且据说性能也不错,使用非常普遍iBATIS算是后起之秀,个人觉得使用起来比较灵活,但在性能、稳定性、扩展性上不知表现如何,还请有经验的大侠们赐教个人现在比较倾向于用iBATIS 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 现在已经不是ibatis而是mybatis了,一般大部分在开发中感觉hibernate最大优势的也就是findById,save,update,delete只需要一个实体或id支持jpa就是了。但是这些如果对mybatis的源码非常了解的话,只要做些改造就可以让mybatis支持jpa最常用的@Id @Entity @Table @Column这些了那些findById,save,update,delete也都可以支持的。mybatis的最大优势在于他sql的复用性,动态的sql,可以使用ognl,sql写在xml中彻底与代码分开,便于后面的维护,以及一个sql只需使用ognl就可以达到一个select标签上的sql可以给很多的模块复用,如果是到系统的复杂查询和分布式系统时mybatis的动态sql以及sql写在xml中的优势就更能体现了。 根据自己的熟练程度来选择持久化框架如果自己对hibernate非常熟练的话,那就选择hibernate;如果对mybatis熟练,那就选择mybatis。听说hibernate的一些比较高级的功能,像连表查询,多表查询对使用者的hibernate能力要求比较高,否则hibernate的效率是比较低的,因为用户不知道hibernate怎么处理多表之间的查询关系。mybatis的话,所有的sql都由自己来写,能灵活些。 建议是用mybatis,SQL语句写法掌握在自己手里,这样好优化些。 hibernate越来越复杂,iBATIS相对比较简洁。 我觉得就是看个人吧,前两年在上家公司,用的是hibernate,跟着就用这个了。现在这公司都用ibatis。 你不可能脱离群众一个人用hibernate吧 如果用hibernate的话,可以用用rapid-framework自动生成entity,dao,service,controller。自己写hibernate的映射感觉比较麻烦,那就用ibatis,sql方便维护。 实际项目里的SQL很多都需要专业DBA优化的,不是Hibernate这种工具能做的。 我也觉得MyBatis好驾驭一些,hibernate那些什么懒加载之类的问题,真的很头痛,mybatis自己写sql,也就没有很多if条件判断了,要什么得到什么,个人感觉性能比hibernate高些 实际项目里的SQL很多都需要专业DBA优化的,不是Hibernate这种工具能做的。 问题是小公司能有几个DBA够你使唤,还不是程序员干着DBA的工作。 都是扯淡啊 ···都从2个框架来比要用什么还是得看你项目的实际情况如果对sql性能要求比较高,对hibernate又不是很精通 还是用mybatis吧如果对性能要求不那么高而是各个表之间关系复杂,可以用hibernate还有一点 如果你的sql不是很精通用mybatis写出大把性能低下的sql的话甚至不如hibernate自动生成的终上所述这个决定还是得你自己下因为只有你了解你现在的项目情况还有你对2个框架的熟悉程度我2个都用过感觉mybatis是强在sql可以自己灵活写,sql写的好性能会好一点而hibernate强在关系映射,不用你去头疼sql各种连接查询,关联插入什么的个人意见,如果你们团队sql写的不怎么样,干脆用hibernate 这位童鞋分析的比较清楚一些,我们团队里有擅长写sql的人,看来选mybatis是比较合适的。 这位童鞋分析的比较清楚一些,我们团队里有擅长写sql的人,看来选mybatis是比较合适的。那就多给点分 个人觉得在公司里比较多人倾向用MyBatis,hibernate现在反而不多了 当初学的Hibernate 到公司一直用IBATIS System.out.println("我是小白,用hibernate"); 其实啊,hibernate和mybatis用得好,在性能上都能足够满足需求,究竟选择哪个,就取决与团队的倾向性了,用哪个顺手就用哪个,如果都没用过,那就都研究一下,觉得哪个上手快就用哪个。 hibernate,ibatis不用看了,现在新出了一个myBatis,相当于升级版的ibatis,面向对象。 System.out.println("我是小黑,用hibernate"); The method init(String) is undefined for the type GoodsField 在线等!! 告诉求解!!SSH框架启动Tomcat是报错!!求解!!! 一个奇怪的问题,求解 大家来解释一下这个java weblogic中关于JMS事务控制的问题 高手看下(最后10分都了) tomcat一个奇怪的问题? 收集Java与XML编程的问题,请高手指点迷经! spring事务问题求解 文件上传 spring中使用@Autowired报空指针,小菜深深的怀疑环境有问题! SSH2 问题,求SSH2高手帮解决
mybatis的最大优势在于他sql的复用性,动态的sql,可以使用ognl,sql写在xml中彻底与代码分开,便于后面的维护,以及一个sql只需使用ognl就可以达到一个select标签上的sql可以给很多的模块复用,如果是到系统的复杂查询和分布式系统时mybatis的动态sql以及sql写在xml中的优势就更能体现了。
如果自己对hibernate非常熟练的话,那就选择hibernate;如果对mybatis熟练,那就选择mybatis。
听说hibernate的一些比较高级的功能,像连表查询,多表查询对使用者的hibernate能力要求比较高,否则hibernate的效率是比较低的,因为用户不知道hibernate怎么处理多表之间的查询关系。mybatis的话,所有的sql都由自己来写,能灵活些。
现在这公司都用ibatis。 你不可能脱离群众一个人用hibernate吧
自己写hibernate的映射感觉比较麻烦,那就用ibatis,sql方便维护。
问题是小公司能有几个DBA够你使唤,还不是程序员干着DBA的工作。
都从2个框架来比
要用什么还是得看你项目的实际情况
如果对sql性能要求比较高,对hibernate又不是很精通
还是用mybatis吧
如果对性能要求不那么高
而是各个表之间关系复杂,可以用hibernate
还有一点 如果你的sql不是很精通
用mybatis写出大把性能低下的sql的话
甚至不如hibernate自动生成的
终上所述
这个决定还是得你自己下
因为只有你了解你现在的项目情况
还有你对2个框架的熟悉程度
我2个都用过
感觉mybatis是强在sql可以自己灵活写,sql写的好性能会好一点
而hibernate强在关系映射,不用你去头疼sql各种连接查询,关联插入什么的个人意见,如果你们团队sql写的不怎么样,干脆用hibernate
那就多给点分