mybatis工作流程介绍

mybatis通过注解将statement配置起来,再通过java对象和statement中的sql生成待执行的sql,通过mybatis框架执行sql并将结果映射为java对象

mybatis架构图:

解释:

1、mybatis基本配置文件配置了mybatis运行环境信息,包含:数据连接池、数据库事务管理等,映射配置文件配置sql语句,要在基本配置文件中加载

2、通过mybatis环境配置文件构造会话工厂及SqlSessionFactory

3、通过SqlSessionFactory会话工厂创建会话即SqlSession,sql通过会话执行

4、mybatis低层定义了Executor执行器接口操作数据库,Executor接口有两个实现,一个是基本执行器,一个是缓存执行器

5、MappedStatement是mybatis低层的封装对象,它封装了mybatis基本配置信息和映射信息,一个sql语句对应一个MappedStatement对象,它的id就是sql语句的id

6、MappedStatement对执行语句的输入参数进行定义包含:基本数据类型、HashMap、POJO等,Executor通过MappedStatement在执行sql前将输入的java对象映射至sql中

7、MappedStatement对执行语句的输出结果进行定义包含:基本数据类、HashMap、POJO等,Executor通过MappedStatement将sql语句执行后的结果映射为java对象

时间: 2024-10-15 02:15:00

mybatis工作流程介绍的相关文章

Mybatis工作流程

Mybatis体系结构: Mybatis的功能架构分为三层: API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库.接口层一接收到调用请 求就会调用数据处理层来完成具体的数据处理. 数据处理层:负责具体的SQL查找.SQL解析.SQL执行和执行结果映射处理等.它主要的目的是根据调 用的请求完成一次数据库操作. 基础支撑层:负责最基础的功能支撑,包括连接管理.事务管理.配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件.为上层的数据处理层提供最基础的

浅析live555媒体库之工作流程介绍

live555项目的源代码包括四个基本的库,各种测试代码以及Media Server. 工作模块 四个基本的库分别是: UsageEnvironment  TaskScheduler, groupsock, liveMedia和BasicUsageEnvironment. 官网英文的基本介绍截图如下: 虽是英文的,但是难度不大,能看懂大致意思.这里多说一句,程序员还是要接触并学习英文,毕竟好的技术都是国外引进的.简单说下我的理解 UsageEnvironment   该类库是对系统环境的抽象,包

Storm 中什么是-acker,acker工作流程介绍

概述 我们知道storm一个很重要的特性是它能够保证你发出的每条消息都会被完整处理, 完整处理的意思是指: 一个tuple被完全处理的意思是: 这个tuple以及由这个tuple所导致的所有的tuple都被成功处理.而一个tuple会被认为处理失败了如果这个消息在timeout所指定的时间内没有成功处理. 也就是说对于任何一个spout-tuple以及它的所有子孙到底处理成功失败与否我们都会得到通知.关于如果做到这一点的原理,可以看看Twitter Storm如何保证消息不丢失这篇文章.从那篇文

工作流程介绍

欢迎您加入2014第一诚信兼职网(我们承接的是全球各大刷信誉平台任务)任务随机发配! 兼职人员工作流程以及常见问题,请认真看完! 郑重声明: 凡是收取任何押金,向你索要账号密码的类似项目,都是骗人的!虽然我们对业务员的要求比较高,但加入本项目我们绝不收取任何押金,更不会向你索要任何密码. 据统计,每天有5万人在网上开店,网店数量已经突破百万大关!一个没有信誉的网店,生意绝对不可能好起来!所以越来越多的卖家开始刷信誉,这也就催生网店刷钻手这个行业.网店刷钻手的任务就是给卖家店铺刷信誉赚钱! ———

爬取当当网的图书信息之工作流程介绍

前往http://book.dangdang.com/我们可以看到当当网上面的图书种类非常丰富 我们是计算机类图书为例子,那么计算机类图书页面的URL  http://book.dangdang.com/01.54.htm?ref=book-01-A是我们的种子URL 当我们进入这个页面可以看到很多计算机类图书,什么都别说了,都抓取下来,然后在进入子品类页面继续抓取信息,我们以程序涉及品类为例 进来之后我们可以看到大量的图书,而且在页面上方我们可以看到100页,可不止这么一点还有99页没有显示出

Mybatis工作原理(九)

mybatis工作流程: (1) SqlSessionFactoryBuilder 从 XML 配置文件或通过Java的方式构建出 SqlSessionFactory 的实例. (2) SqlSessionFactory生成SqlSession. (3) SqlSession拿到Mapper对象的代理(通过JDK动态代理生成一个Mapper的代理,代理类实现了我们写的Mapper接口). (4) 通过MapperProxy调用Maper中相应的方法. 1. 构建SqlSessionFactory

MapReduce与Yarn 的详细工作流程分析

MapReduce详细工作流程之Map阶段 如上图所示 首先有一个200M的待处理文件 切片:在客户端提交之前,根据参数配置,进行任务规划,将文件按128M每块进行切片 提交:提交可以提交到本地工作环境或者Yarn工作环境,本地只需要提交切片信息和xml配置文件,Yarn环境还需要提交jar包:本地环境一般只作为测试用 提交时会将每个任务封装为一个job交给Yarn来处理(详细见后边的Yarn工作流程介绍),计算出MapTask数量(等于切片数量),每个MapTask并行执行 MapTask中执

RDIFramework.NET ━ .NET快速信息化系统开发框架 ━ 工作流程组件介绍

RDIFramework.NET ━ .NET快速信息化系统开发框架 工作流程组件介绍 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,给用户和开发者最佳的.Net框架部署方案. 1.RDIFramework.NET框架介绍 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,为企业或个人在.NET环境下快速开发系统提供了强大的支持,开发人员不需要开发系统的基础功能和公共模块,框架自身提供了强大的函数库和开发包,开发人员只须集中精力专注于业

ecshop 工作流程加载配置介绍

这里简单介绍下echsop工作流程: 首先,你会发现一般的echsop的php文件都会引入init.php这个文件一般在includes/init.php. 这是一个初始化文件,里面将常用的变量,函数都初始化了,这样后面就可以直接使用了.比如一上来,这里面引入了常用的类文件,函数文件,全局变量等.如: require(ROOT_PATH . 'includes/inc_constant.php'); require(ROOT_PATH . 'includes/cls_ecshop.php');