# mybatis

什么是 MyBatis?
M 小 yBatis 是一款优秀的持久层框架,用于简化 JDBC 开发
MyBatis 本是 Apache 的一个开源项目 iBatis,201O 年这个项目由 apache software
foundation 迁移到了 google code, 并且改名为 MyBatis。2013 年 11 月迁移到 Github

官网:https://mybatis.org/mybatis-3/zh_CN/getting-started.html

持久层

负责将数据到保存到数据库的那一层代码

javaEE 三层架构:表现层,业务层,持久层

框架

框架就是一个半成品软件,是一套客场虫蛹的,通用的,如阿健基础代码模型

在框架的基础之上构建软件编写更加高效,规范,通用,可扩展

JDBC 缺点:

a
1.注册驱动
Class.forName("com.mysql.jdbc.Driver");
/2.获取Connection连接
String url "jdbc:mysql:///db1?useSSL=false";
String uname=“root";
String pwd ="1234";
Connection conn DriverManager.getConnection(url,uname,pwd);
∥接收输入的查询条件
String gender="男"
∥定义sql
String sql ="select from tb_user where gender ?"
∥获取ostmt对象
PreparedStatement pstmt conn.prepareStatement(sql);
∥设置?的值
pstmt.setString(1,gender);
∥执行sql
ResultSet rs pstmt.executeQuery();
∥遍历Result,获取数据
User user null;
ArrayList<User>users new ArrayList<>();
while (rs.next()){
∥获取数据
int id rs.getlnt("id");
String username rs.getString("username");
String password rs.getString("password");
∥创建对象,设置属性值
user new User();
user.setld(id);
user.setUsername(username);
user.setPassword(password);
user.setGender(gender);
∥装入集合
users.add(user);

1. 硬编码

需要改代码(密码账户修改,数据库也要改代码,SQL 语句)

2. 操作繁琐

手动设置参数

手动封装结果集

# MyBatis 简化:

image-20250417211043905

# 快速入门:

查询 user 表中的所有数据

1. 创建 user 表,添加数据

2. 创建模块,导入坐标

3. 编写 MyBatis 核心配置文件 --》替换连接信息,解决硬编码问题

4. 编写 SQL 映射文件 --》统一管理 SQL 语句,解决硬编码问题

5. 编码

​ 1. 定义 POJO 类

​ 2. 加载核心配置文件,获取 SqlSessionFactory 对象

​ 3. 获取 SqlSession 对象,执行 SQL 语句

​ 4. 释放资源

Edited on

Give me a cup of [coffee]~( ̄▽ ̄)~*

odiws WeChat Pay

WeChat Pay

odiws Alipay

Alipay

odiws PayPal

PayPal