Mybatis相较于传统JDBC的优缺点

前言

咱们朝着Java WEB 方向发展的程序员都知道,Mybatis是一个上手容易的持久层框架,简单的学习后就可以掌握它的用法,这也是Mybatis被广泛使用的原因之一。今天呢,博主就来说说,MyBatis和传统JDBC相比较各自的优缺点,这也是现在可能会被问到的面试题。

正题

Mybatis的前身是iBatis, iBatis 是 Apache软件基金会下的一个开源项目,后来从Apach迁出,并改名为Mybatis。

Mybatis是一种半自动化的持久层框架,可以使用注解和XML的方式将Java对象和SQL语句关联起来。之所以说是半自动的,是因为和Hibernate等一些自动生成SQL的框架相比,Mybaits需要自行维护Sql。维护Sql虽然繁琐,但是也是有好处的,比如:可以控制Sql逻辑,对其进行优化而提高效率。

  • Mybatis的使用步骤
    • 编写mapper接口
    • 编写mapper映射文件
    • 配置mybatis全局配置文件
    • 加载全局配置文件,创建SqlSessionFactory对象
    • 使用SqlSessionFactory对象创建SqlSession对象
    • SqlSession调用xml映射文件中的sql进行CURD
  • JDBC的使用步骤
    • 编写Dao接口(其实也就是mapper接口)
    • 加载JDBC驱动
    • 创建数据库连接
    • 创建Statement对象
    • 执行SQL语句
    • 处理执行结果
    • 关闭使用的JDBC对象

从以上两中方式的步骤来看,Mybatis的步骤数似乎也没简便多少。但其实Mybatis已经为开发人员节省了很多工作量。接下来,咱们就好好分析分析

1️⃣传统JDBC,需要创建连接对象,Statement预编译对象,拼接Sql,执行完了还需要对查询结果进行处理,假设是查询,对查询结果的处理工作量还是很大的,以及查询后的释放资源对象。而Mybatis 则帮开发人员免去了创建连接对象、预编译对象、不再需要对结果一一处理。

2️⃣修改Sql在传统的JDBC非常的复杂繁琐、并且是在源代码中修改,Java修改源代码后需要重新编译,带来了极大的不便,而Mybatis只需要在xml映射文件中修改。

3️⃣难道说,Mybatis就没有缺点吗?有!肯定有!在开发大型项目中,mapper接口几十个,也很正常,而这时候,一个接口对应一个映射文件,则太难管理映射文件了。

最后

总的来说,Mybatis还是大大简化了持久层的开发。人类终究还是“懒惰”的,他们会用着智慧,给自己带来便利,提高工作效率,为Mybatis项目的开发人员树个大拇哥!!👍👍👍👍👍

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇