Mybatis面试学习

1.介绍一下mybatis

mybatis是一个半自动的ORM的框架,ORM就是对象关系映射。(对象指的是Java对象,关系指的是数据库中的关系模型,对象关系映射,指的就是在Java对象和数据库的关系模型之间建立一种对应关系)全自动化有Hibernate。他是基于JDBC封装的框架。更专注于SQL语句的编写,简化了开发步骤,不需要再去关系加载驱动等等这些,提高了我们的开发效率。

2.mybatis的工作原理

系统启动加载全局配置文件和映射文件,加载解析的相关信息回存储在Configuration对象里面。

创建SqlSessionFactory,调用sqlsessionfactorybuilder的buil(in)方法。

根据sqlsessionfactor对象中的opensession()获取sqlsession对象

获取代理对象

  1. 编写mapper.xml,书写SQL,并定义好SQL的输入参数,和输出参数
  2. 编写全局配置文件,配置数据源,以及要加载的mapper.xml文件
  3. 通过全局配置文件,创建SqlSessionFactory
  4. 每次进行CRUD时,通过SqlSessionFactory创建一个SqlSession
  5. 调用SqlSession上的selectOne,selectList,insert,delete,update等方法,传入mapper.xml中SQL标签的id,以及输入参数
相关推荐
CT随4 分钟前
MongoDB
数据库·mongodb
界面开发小八哥9 分钟前
「Java EE开发指南」如何用MyEclipse构建一个Web项目?(一)
java·前端·ide·java-ee·myeclipse
数据小小爬虫10 分钟前
Python爬虫获取AliExpress商品详情
开发语言·爬虫·python
小爬虫程序猿11 分钟前
利用Python爬虫速卖通按关键字搜索AliExpress商品
开发语言·爬虫·python
王伯爵12 分钟前
<packaging>jar</packaging>和<packaging>pom</packaging>的区别
java·pycharm·jar
一朵好运莲18 分钟前
React引入Echart水球图
开发语言·javascript·ecmascript
Eiceblue30 分钟前
使用Python获取PDF文本和图片的精确位置
开发语言·python·pdf
Q_192849990634 分钟前
基于Spring Boot的个人健康管理系统
java·spring boot·后端
Fool丶玄浅38 分钟前
【数据库系统概论】—— 关系数据库
数据库·数据库系统
xianwu54338 分钟前
反向代理模块。开发
linux·开发语言·网络·c++·git