一、ORM框架:架构设计思路
1.1 经典的主流软件架构
- 比如MySQL分成连接层、server、存储引擎层
- 比如RabbitMQ为核心的,事件分发的架构
- 比如Tomcat中的责任链,流水线的感觉
- 比如VSCode。核心非常小,功能扩展通过插件
1.2 ORM框架
1.共4层
- 接口层:比如:上节中,直接调用的MyBatis的接口方法,向上支持业务代码的调用
- 处理层:是具体的处理逻辑
- 支撑层
- 连接层:直接连接数据库的。比如Java中的JDBC
1.3 ORM框架的软件架构(图)
(1)接口层:
(2)处理层:接口层方法,入参是业务中的对象。所以,要将其映射转换为数据库中的一条行记录数据。--------------- 又有点像管道-过滤器的软件架构
(3)支撑层:
- 事务管理:比如在业务中加了注解
@Transactional
,管理事务的开启、提交、回滚。 - 连接池管理:比如Java中的C3P0连接池,保存里很多个对数据库的连接对象,已供客户端使用。
- 缓存机制:刚刚查询的SQL语句的结果,会缓存在本地内存中,就不用多次的请求数据库了。比如MyBatis的一级缓存、二级缓存
(4)连接层:连接池始终保存着30个对数据库的连接对象。通过数据库驱动,比如Java中的JDBC来连接数据库。--------------------- 数据库驱动,又有点像微核的软件架构。比如Java的JDBC,可以是MySQL的插件驱动、SQLServer的插件驱动、PostgreSQL插件驱动
二、小结
比如Java的MyBatis框架本身、Java 语言中Spring Boot中的MyBatis的适配器,这两个项目都是Java语言中优质项目。有利于技术进步
Comments | NOTHING