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,以及输入参数
相关推荐
石山代码1 小时前
c++类型判断
开发语言·c++
froginwe111 小时前
传输对象模式
开发语言
Hello:CodeWorld1 小时前
μC/OS vs FreeRTOS:嵌入式实时操作系统深度对比
c语言·开发语言·单片机
绝世唐门三哥1 小时前
ES6 --- import/export 全解析
开发语言·前端·javascript
yqcoder1 小时前
JavaScript 异步基石:Promise 完全指南
开发语言·前端·javascript
东风破1371 小时前
DM8搭建同构(dm-dm)及异构数据库(dm-oracle,dm-mysql)的dblink
数据库·mysql·oracle
wangl_921 小时前
初探 C# 15 的 Union Types
java·开发语言·算法·c#·.net·.net core
happymaker06261 小时前
Spring学习日记——DAY06(事务管理)
java·学习·spring
兰令水1 小时前
topcode【随机算法题】【2026.5.14打卡-java版本】
java·算法·leetcode
雪度娃娃1 小时前
结构型设计模式——代理模式
java·c++·设计模式·系统安全·代理模式