MyBatis是一个基于Java的持久层框架。所谓的持久层框架是专用于持久化数据的框架,即用于在数据库中存储数据的框架。要学习和掌握Mybatis,我们必须首先了解Mybatis的核心组成部分。下面我们一起来了解一下Mybatis四大核心组件:SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession以及SQLMapper。
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、SQLMapper
SQL映射器,它是MyBatis改名之后新开发出来的组件,由一个Java接口和XML文件(或注解)构成,如果想要使用SQL映射器,就必须遵循它所提出的一系列规范,这一点我们将在第四关中讲解。它主要通过调用Java接口中的方法来执行与其捆绑的SQL语句,并返回结果。
推荐阅读:java架构师培训:java最佳测试框架JBehave的基本介绍
如果你想了解更多关于java架构师的专业知识,可以加入JAVA架构师交流群:1160405674,里面都是同行,有资源分享包括但不限于(分布式架构、高可扩展、高性能、高并 发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、Mycat、Netty、Kafka、Mysql 、Zookeeper、Tomcat、Docker、Dubbo、Nginx)。欢迎一到五年的工程师加入,合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!