MyBatis概念

75 阅读2分钟

简介

MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Ordinary Java Objects,普通的 Java对象)映射成数据库中的记录。 每个MyBatis应用程序主要都是使用SqlSessionFactory实例的,一个SqlSessionFactory实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。 用xml文件构建SqlSessionFactory实例是非常简单的事情。推荐在这个配置中使用类路径资源(classpath resource),但你可以使用任何Reader实例,包括用文件路径或file://开头的url创建的实例。MyBatis有一个实用类----Resources,它有很多方法,可以方便地从类路径及其它位置加载资源。

一、数据的持久化

1、我们之前学过的持久化操作:序列化、IO流、数据库

2、数据在瞬时状态(比如:内存)和持久状态(比如:硬盘、数据库)之间互相转化的过程;

二、ORM

1、ORM:Object Relational Mapping,对象-关系-映射,他是实现数据库持久化的其中一种方式;

2、在Java对象和关系型数据库的表之间建立一种对应关系,可以通过Java对象去操作数据库中的表中的记录:(Java《===》表,类的对象《==》表中的记录);

三、MyBatis:

1、是一种基于ORM的技术的持久化层框架,在Java对象和数据库表之间建立一座桥梁。

2、通过MyBatis可以建立于SQL语句之间映射关系,快手实现对数据库的增删改查。

四、我们把Mybatis的功能架构分为三层:

(1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。

(2)数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。

(3)基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。