mybatis源码阅读之1:框架概述

从JDBC到mybatis,数据库操作经历了多个阶段。JDBC需要手动处理连接和SQL,DBUtils简化了连接管理,JDBCTemplate引入了ORM概念,Hibernate实现了全自动ORM,而mybatis则提供了更灵活的半ORM解决方案,简化了SQL优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mybatis就是ibatis3.0以後的版本.

对于日常开发中的DB操作,我们经历了JDBC>DBUtils->JDBCTemlpate->hibernate->mybatis

对于以上比较,各阶段的利弊如下:

JDBC:

每次需要手动去写java代码去获取数据库链接,使用java代码去拼接sql,拼接参数,最后执行完还要手动去释放链接。

 

DBUtils:

封装了数据库的链接获取操作和链接关闭操作,这个时候主要工作是使用java代码去拼接sql,拼接参数

 

JDBCTemplate:

开始提供真正意义上的ormapping框架了,通过配置,引入即可,但是通常还是要在java中拼接sql

 

hibernate:

是一个很强大的全自动全映射的ORM(Object Relatoin Mapping)框架了,但是查询,通常是查询所有字段,如果要做优化,要深入学习HQL,上手难度稍微有点大

 

myabtis:

也就是我们这个系列的主要内容了,其实算不上完全的ormapping框架,因为它不如hibernate功能全面,算是半个ormapping框架吧,通常引入配置以后,我们只要定义接口和编写XML格式的sql即可,当然,也可以通过注解的方式写sql,优化起来,比hibernate要简单些

 

注意,嵌套在java代码中的sql,属于硬编码高耦合的方式。

 

但是不管哪个阶段,哪种方式的DB操作,都需要经过如下几个阶段:

  1. 编写sql
  2. 预编译
  3. 设置参数
  4. 执行sql
  5. 封装结果

下一篇  mybatis执行流程

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值