原理分析之二:架构分析
来源:互联网 发布:mac os虚拟机性能优化 编辑:程序博客网 时间:2024/06/15 21:24
参考:http://chenjc-it.iteye.com/blog/1460990
http://www.cnblogs.com/mengheng/p/3739610.html
Mybatis的功能架构图
功能架构讲解:
我们把Mybatis的功能架构分为三层:
(1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。
(2)数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。
(3)基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。
在源代码中的体现
(1)参数映射:配置来源于两个地方,一处是配置文件,一处是Java代码的注解,将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。
(2)SQL解析:当API接口层接收到调用请求时,会接收到传入SQL的ID和传入对象(可以是Map、JavaBean或者基本数据类型),Mybatis会根据SQL的ID找到对应的MappedStatement,然后根据传入参数对象对MappedStatement进行解析,解析后可以得到最终要执行的SQL语句和参数。
(3) SQL执行:将最终得到的SQL和参数拿到数据库进行执行,得到操作数据库的结果。
(4)结果映射:将操作数据库的结果按照映射的配置进行转换,可以转换成HashMap、JavaBean或者基本数据类型,并将最终结果返回。
- 原理分析之二:架构分析
- Impala之02-原理、架构分析(1)
- Impala之03-原理、架构分析(2)
- symbian OS多媒体架构分析 之二
- Android GPS架构分析之二
- Ext4文件系统二之架构分析
- Linux串口二之驱动架构分析
- 二、OpenStack入门 之 架构分析
- 【OpenVswitch源码分析之二】架构
- springmvc架构原理分析
- HDFS架构原理分析
- 原理分析之二:框架整体设计
- 原理分析之二:框架整体设计
- 原理分析之二:框架整体设计
- 原理分析之二:框架整体设计
- 原理分析之二:框架整体设计
- 原理分析之二:框架整体设计
- 原理分析之二:框架整体设计
- 简美自动化之机器视觉光源
- Mac下的包管理Homebrew使用
- tcl/tk参考——系统相关glob
- HDOJ--2006
- Unity5中灯光烘焙(lightmap)的一些注意事项
- 原理分析之二:架构分析
- ImageView的ScaleType属性
- hpuoj--1695--一道签到题(KMP)
- UVA 10935 卡片游戏
- 蓝桥杯 序列求和
- android 微信 sdk api调用不成功解决方案 api.sendReq(localReq );
- Word Press提示Fail to connect FTP server
- cocos2dx AdMob for Android
- 修改linux下的语言环境