MyBatis基本工作原理
MyBatis框架是SqlSessionFactoryBuilder从mybatis-config配置文件来构建SqlSessionFactory,
然后的实例SqlSessionFatory的实例开启一个Sqlsession,然后Sqlsession的实例获得Mapper对象并运行Mapper映射的,完成对数据库的CRUT和事务提交,然后关闭Sqlsession;
1.一个简单的SqlSessionFactory创建
InputStream is = Resources.getResourceAsStream("mybatis-config.xml"); SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
Mybatis配置文件
这是mybatis的核心设置,包括数据库连接的数据源和控制事务作用域和控制事务方式的管理,
mybatis还有一个特点是把sql语句映射,mybatis可以映射Mapper的方法和和XML映射的SQL构成映射关系,而这些XML映射文件也在Mapper配置文件进行设置。
简单的mapper-config配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<!-- 事务管理器 -->
<transactionManager type="JDBC"/>
<!-- 数据源 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!-- XML 映射文件 -->
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
mybatis访问数据库
因为SqlSessionFactory管理着mybatis配置文件的信息,会根据SqlSessionFactory创建session的实例,session同样也会获得mybatis配置文件的信息,并且通过数据库相关的信息,
根数据库打交道。
一个简单的映射访问数据库的例子
SqlSession sqlSession = MyBatisUtils.createSqlSession(); userList = sqlSession.getMapper(SysUserMapper.class).getUserListQuery();
MyBatis基本工作原理相关推荐
- mybatis的工作原理
MyBatis 的工作原理 在学习 MyBatis 程序之前,读者需要了解一下 MyBatis 工作原理,以便于理解程序.MyBatis 的工作原理如图 2 所示. 下面对图 2 中的每步流程进行说明 ...
- MyBatis基本工作原理介绍
1.MyBatis基本工作原理介绍 计算机的基本工作就是存储和计算,而MyBatis是存储领域的利器.MyBatis的基本工作原理就是:先封装SQL,接着调用JDBC操作数据库,最后把数据库返回的表结 ...
- Mybatis 的工作原理及流程
1.介绍 MyBatis的底层操作封装了JDBC的API,MyBatis的工作原理以及核心流程与JDBC的使用步骤一脉相承,MyBatis的核心对象(SqlSession,Executor)与JDBC ...
- java的工作原理你知道吗_每天用Mybatis,但是Mybatis的工作原理你真的知道吗?
近来想写一个mybatis的分页插件,但是在写插件之前肯定要了解一下mybatis具体的工作原理吧,于是边参考别人的博客,边看源码就开干了. 核心部件:SqlSession Executor Stat ...
- MyBatis 的工作原理,你了解过吗?
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 来源:cnblogs.com/scuury/p/10371 ...
- Mybatis的工作原理,你了解过吗?
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 来源:cnblogs.com/scuury/p/10371246. ...
- Mybatis 的工作原理,写得太好了!
来源:cnblogs.com/scuury/p/10371246.html 近来想写一个mybatis的分页插件,但是在写插件之前肯定要了解一下mybatis具体的工作原理吧,于是边参考别人的博客,边 ...
- mybatis工作原理_万字好文!MyBatis 的工作原理,你了解过吗?
回复 1024 有特别礼包 作者:江南入直 | 来源:cnblogs.com/scuury/p/10371246.html 上一篇:微信支付的架构到底有多牛? 近来想写一个mybatis的分页插件,但 ...
- 五分钟,带你彻底掌握 MyBatis缓存 工作原理
作者:双子孤狼 blog.csdn.net/zwx900102/article/details/108696005 前言 在计算机的世界中,缓存无处不在,操作系统有操作系统的缓存,数据库也会有数据库的 ...
- mybatis 原理_了解Mybatis的工作原理吗
点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 作者:江南入直 cnblogs.com/scuury/p/10371246.html 推荐 ...
最新文章
- 微信小程序自定义组件之Picker组件
- HOGDescriptor 描述类
- [Cocoa]深入浅出Cocoa之多线程NSThread
- 一个查看UI5控件所有公有方法的小技巧
- QT设计器主界面中文介绍
- Python生成Windows可执行exe文件
- vue 声明周期函数_Vue_生命周期函数
- 客户端是选择Java Swing还是C# Winform
- 九张图带你了解全宇宙最神秘的团体——程序员
- jQuery的radio,checkbox,select操作
- 中国汽车产业数字化服务商研究报告及TOP50榜单
- Nature | IL-27直接靶向脂肪细胞以促进产热而改善肥胖
- 让Python输出更漂亮
- Java生成和操作Excel文件
- No_16_0224 Java基础学习第五天
- 威纶通触摸屏232脚位_触摸屏通讯口(USB、RS232、RS422/485)的正确使用
- 【Unity】制作剧情向游戏使用Fungus插件
- UI设计中的原型图用什么工具?怎么做?给谁看?
- 《动手学深度学习》(PyTorch版)代码注释 - 56 【Machine_translation】
- python期货数据 库_如何用python或者基于vnpy框架将期货tick数据聚合成1分钟数据呢?...