在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
MyBatis是一个基于Java的持久层框架,所谓的持久层框架就是专门用来将数据进行持久化的框架,也就是说将数据存储到数据库中的框架。学习并掌握Mybatis,首先就要了解Mybatis的核心组件。下面我们一起来了解一下Mybatis四大核心组件:SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession以及SQL Mapper。

1、SqlSessionFactoryBuilder
作为Mybatis的核心组件之一,它直接翻译为中文是SQL会话工厂建造者,也有人管它叫作MyBatis的构造器。你也许会想为什么在不同的地方看到的这个翻译会有所不同?因为对于我们来说,词汇本身虽然来源于英文,但是汉译词组来自于中国人,我们在翻译英文文献的时候,都会带有个人在技术上的理解,所以叫法略有不同属于正常。这个时候不必纠结于哪一种叫法更合适,或者是更正确,我们知道这个东西是什么就好了。所以当你和其他人在就这个知识讨论出现误差的时候,沟通才是最重要的。
言归正传,我们先来解释SQL,它叫作结构化查询语言,是操作数据库的一种语言。而SqlSessionFactoryBuilder,实际上是用来创建SqlSessionFactory实例的,它可以通过配置文档来创建 SqlSessionFactory,所以说它是构造器也不为过。
2、SqlSessionFactory
直接翻译为SQL会话工厂,它是一个接口,用于创建SqlSession的实例。简单来讲,SqlSessionFactory是MyBatis的关键对象,它是个单个数据库映射关系经过编译后的内存镜像。SqlSessionFactoryBuilder可以从XML配置文件或一个预先定制的Configuration的实例构建出SqlSessionFactory的实例。每一个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心.同时SqlSessionFactory也是线程安全的,SqlSessionFactory一旦被创建,应该在应用执行期间都存在。
3、SqlSession
SQL会话,它也是一个接口,这才是MyBatis最核心的对象,也是最重要的Mybatis核心组件。前面的两个组件不过是用来得到它的前提,SQL会话中包含了30个方法,包括执行SQL语句、提交、回滚事务以及获取映射器实例等。
4、SQL Mapper
SQL映射器,它是MyBatis改名之后新开发出来的组件,由一个 Java 接口和 XML 文件(或注解)构成,如果想要使用SQL映射器,就必须遵循它所提出的一系列规范,这一点我们将在第四关中讲解。它主要通过调用Java接口中的方法来执行与其捆绑的SQL语句,并返回结果。
以上就是Mybatis的核心组件,相信看到这里,大家都已经有了一个初步的了解。要想跟深入学习Mybatis的核心组件,欢迎大家在博学谷在线观看相关的视频课程资源~
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java开发Overload 和 Override 的区别是什么?
Java开发Overload 和 Override 的区别是什么?Overloaded 的方法是否可以改变返回值的类型?Overload 是重载的意思,Override 是覆盖的意思,也就是重写。重载 Overload 表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。
10136
2019-05-24 15:22:03
一文解析六大设计模式及其应用场景
设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案,是经过多年开发语言发展由众多的程序员积累总结出来的。掌握设计模式的应用,可以大大提高程序员的编程效率。本文将和大家分享我们常见的六种设计模式以及其应用场景。
10065
2019-08-08 14:08:39
Dubbox和Dubbo哪个好?为什么?
Dubbox和Dubbo哪个好?其实Dubbox和Dubbo都是很好的服务框架,简单来说,Dubbox和Dubbo本质上没有区别,Dubbox是Dubbo的升级版本。这样说来,好像Dubbox更好一些,为什么?毕竟它是升级的版本,扩展了Dubbo没有的内容。现在,我们来详细分析一下它们两者的区别吧!
14002
2019-08-06 10:12:07
ServiceComb技术点教程哪里有?
博学谷的ServiceComb教程讲解概念及应用,ServiceComb 作为Apache开源组织下的一款微服务框架,其前身为华为云的微服务引擎 CSE云服务。学习后能够使用华为公司提供的微服务解决方案,解决微服务开发基本问题。
7022
2019-11-11 18:20:29
如何学习灵活运用Spring框架?
对程序员来讲,深入掌握并灵活运用Spring框架,是进军大厂、获得更好职业发展必须跨过的一道难关。那么,如何学习灵活运用Spring框架呢?本文将推荐你看看博学谷的《Spring高级之注解驱动开发详解》免费课程,该课程不仅脉络清晰,且兼具深度广度,下面我们来看一下课程详情。
6144
2020-07-13 11:31:04
