详解MyBatis之篇一

发布于:2024-12-07 ⋅ 阅读:(155) ⋅ 点赞:(0)

目录

MyBatis

定义

使用MyBatis操作数据库

创建项目

配置

演示

UserInfo.java

 UserInfoMapper

UserInfoMapperTest

数据准备

自动生成测试类

运行结果


MyBatis

定义

MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs (Plain Old Java Objects, 普通的 Java 对象)映射成数据库中的记录。

持久层:指的就是持久化操作的层, 通常指数据访问层(dao), 是⽤来操作数据库的.

使用MyBatis操作数据库
创建项目

注意引入下面的MyBatis Framework依赖!!!

Mybatis 是⼀个持久层框架, 具体的数据存储和数据操作还是在MySQL中操作的, 所以需要添加
MySQL驱动。
项目创建好后,会自动在pom.xml文件中导入MyBatis依赖和MySQL驱动依赖:

配置

Mybatis中要连接数据库,需要数据库相关参数配置:

• MySQL驱动类
• 登录名
• 密码
• 数据库连接字符串

如果是application.yml⽂件, 配置内容如下:

# 数据库连接配置
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/mybatis_test?characterEncoding=utf8&useSSL=false
    username: root
    password: 你自己的密码
    driver-class-name: com.mysql.cj.jdbc.Driver

如果是application.properties⽂件, 配置内容如下:

#驱动类名称
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#数据库连接的url
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mybatis_test?
characterEncoding=utf8&useSSL=false
#连接数据库的⽤⼾名
spring.datasource.username=root
#连接数据库的密码
spring.datasource.password=root
演示
UserInfo.java
import lombok.Data;

import java.util.Date;

@Data
public class UserInfo {
    private Integer id;
    private String username;
    private String password;
    private Integer age;
    private Integer gender;
    private String phone;
    private Integer deleteFlag;
    private Date createTime;
    private Date updateTime;
}
 UserInfoMapper
import com.wmh.mybatisdemo.model.UserInfo;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface UserInfoMapper {
    @Select("select * from userinfo")
    List<UserInfo> getUserInfoAll();
}
UserInfoMapperTest
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import static org.junit.jupiter.api.Assertions.*;

@SpringBootTest
class UserInfoMapperTest {
    @Autowired
    private UserInfoMapper userInfoMapper;

    @Test
    void getUserInfoAll() {
        System.out.println(userInfoMapper.getUserInfoAll());
    }
}
数据准备

自动生成测试类

运行结果


网站公告

今日签到

点亮在社区的每一天
去签到