0 1为什么使用MyBatis
尚硅谷MaBatis教程
一、MyBatis是什么?
MyBatis是一个半自动化的持久化层框架。优秀的持久化层框架,与数据库进行交互
JDBC
- sql夹在Java代码块里,耦合度高导致硬编码内伤
- 维护不易且实际开发需求中sql是有变化,频繁修改的情况多见
Hibernate和JPA
- 长难复杂SQL,对于Hibernate而言处理也不容易
- 内部自动生产的SQL,不容易做特殊优化
- 基于全映射的全自动框架,大量字段的POJO进行部分映射时比较困难,导致数据库性能下降。
对于开发人员而言,核心sql还是需要自己优化
SQL和java编码分开,功能边界清晰,一个专注业务、一个专注数据。
previous
JDBC->DButils(QueryRunner)=>jdbcTemplate 小工具 框架:整体解决方案
编写sql、预编译、设置参数、执行sql、封装结果
1、功能简单:sql语句编写在java代码里面;硬编码高耦合的方式
Hibernate:全自动全映射ORM(Object Relation Mapping)框架:旨在消除sql,HQL
希望:sql语句交给开发人员编写,希望sql不失去灵活性;
MyBatis:半自动 关键部分留给我们控制,轻量级框架
Sql与java编码分离,sql是开发人员控制
只需要掌握好sql