首页 热点资讯 义务教育 高等教育 出国留学 考研考公

mybatis与springjdbc比较,谁更有优势

发布网友 发布时间:2022-04-25 15:00

我来回答

1个回答

热心网友 时间:2022-04-08 01:19

其实,没有什么区别。
就底层的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 虽然用到反射效率低,但是没有低到不能接受的程度。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com