mybatis与springjdbc比较,谁更有优势

 我来答
bluemind_2004
2017-03-15 · TA获得超过964个赞
知道小有建树答主
回答量:539
采纳率:93%
帮助的人:300万
展开全部
其实,没有什么区别。
就底层的SQL的执行效率而言,二者都不会去具体的实现数据驱动,底层都依赖数据库的JDBC驱动程序。没有区别。
持久层面上,MyBatis 用xml 配置SQL语句。JDBCTemplate 直接书写SQL。但是最后的结果都要OO化(Spring 的 OO 化 可能需要写代码),本质上没有啥区别的。
所差别的是事务管理的灵活性和效率而以。
在事务灵活性上Spring的txManager 要好于 MyBatis 的SqlSession。二者的区别是Spring 的AOP 实现了前后通知,在3段提交过程中,可以很方便的定义补充动作。灵活的同时就带来效率的降低,毕竟AOP 是基于动态代理,动态代理就要用到反射,反射就是慢。
SQLSession 在灵活性上不如Spring 的 tx。但是就效率来说要好于tx,毕竟人家没有用到反射,就是一个代理模式应用而已。

综上,在分布式的条件下,建议Spring,在单点的条件下.....还是建议Spring。tx 虽然用到反射效率低,但是没有低到不能接受的程度。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式