Spring之路(33)–MyBatis基本介绍与应用场景

简介: 本文目录1. 常用的访问数据库的方式2. MyBatis 应用场景3. MyBatis 基本工作流程

1. 常用的访问数据库的方式

说实话,我就只用过4种:


第1种,自己编写JDBC访问数据库,或者简单的封装下JDBC访问数据库,毫无疑问这种大家应该都写过,但是质量堪忧。因为绝大多数程序员还达不到封装国际知名类库的能力,而后面的方式都是国际知名的。


第2种,使用SpringJDBC,基本还是按JDBC的方式访问数据库,不过将重复代码封装起来了,更加简洁优雅。


第3种,Hibernate,比较全面彻底的ORM封装,想当年我学Java Web开发的时候,最流行的就是SSH(Spring+Struts+Hibernate)。目前应用也很多,在国内国企、传统软件公司用的很多。


第4种,MyBatis,前身是iBatis。相比于Hibernate,ORM封装并没有那么彻底,也就是说还需要写不少sql语句。但是恰恰这顺应了互联网发展的浪潮。互联网公司的项目,往往都面临流量大数据库压力大的困难,而MyBatis可以自由的编写sql语句便于定制、优化sql。所以目前互联网公司采用MyBatis的更多,目前形成了非常流行的SSM(Spring+SpringMVC+MyBatis)。


但是没有最好,只有最合适。非常小的项目可以直接JDBC+Servlet;如果是使用了Spring的话,可以直接用SpringJDBC比原生JDBC更快更方便;如果是比较大一点的项目还是推荐使用Hibernate或者MyBatis,当然我个人是更加推荐MyBatis的,写起来更加爽快,Hibernate我感觉太繁琐了,然后我日常工作也经常需要优化一些sql,从这一点上使用MyBatis也更方便点。


2. MyBatis 应用场景

其实上面已经分析了,可以说只要正儿八经的项目,需要访问数据库的(还有不需要的吗?),都建议使用MyBatis。


3. MyBatis 基本工作流程

执行java方法准备操作数据库

该方法对应元数据中配置的sql语句,此时转而执行sql

执行完成后,根据元数据配置将结果转换为java数据结构。此处描述对象-关系映射的元数据指的是注解或xml

主要工作流程就是这样。

相关文章
|
3天前
|
SQL Java 数据库连接
Spring Boot整合MyBatis
Spring Boot整合MyBatis
|
1天前
|
Java 数据库连接 数据库
大事件后端项目05-----springboot整合mybatis
大事件后端项目05-----springboot整合mybatis
大事件后端项目05-----springboot整合mybatis
|
3天前
|
Java 数据库连接 Spring
Spring 整合 MyBatis 底层源码解析
Spring 整合 MyBatis 底层源码解析
|
4天前
|
Java 数据库连接 数据库
Spring Boot 集成 MyBatis-Plus 总结
Spring Boot 集成 MyBatis-Plus 总结
|
6天前
|
Java 关系型数据库 MySQL
Mybatis入门之在基于Springboot的框架下拿到MySQL中数据
Mybatis入门之在基于Springboot的框架下拿到MySQL中数据
15 4
|
6天前
|
Java 数据库连接 数据库
Springboot整合mybatis注解版(202005)
Springboot整合mybatis注解版(202005)
14 3
|
6天前
|
SQL Java 数据库连接
2万字实操案例之在Springboot框架下基于注解用Mybatis开发实现基础操作MySQL之预编译SQL主键返回增删改查
2万字实操案例之在Springboot框架下基于注解用Mybatis开发实现基础操作MySQL之预编译SQL主键返回增删改查
16 2
|
6天前
|
安全 前端开发 Java
挑战5分钟内基于Springboot+SpringMVC+Mybatis-plus快速构建web后端三层架构
挑战5分钟内基于Springboot+SpringMVC+Mybatis-plus快速构建web后端三层架构
12 1
|
6天前
|
Java 程序员
浅浅纪念花一个月完成Springboot+Mybatis+Springmvc+Vue2+elementUI的前后端交互入门项目
浅浅纪念花一个月完成Springboot+Mybatis+Springmvc+Vue2+elementUI的前后端交互入门项目
19 1
|
10天前
|
Java 数据库连接 mybatis
在Spring Boot应用中集成MyBatis与MyBatis-Plus
在Spring Boot应用中集成MyBatis与MyBatis-Plus
46 5