详解MyBatis之篇一

embedded/2024/12/3 6:53:43/

目录

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=falseusername: rootpassword: 你自己的密码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 {@Autowiredprivate UserInfoMapper userInfoMapper;@Testvoid getUserInfoAll() {System.out.println(userInfoMapper.getUserInfoAll());}
}
数据准备

自动生成测试类

运行结果


http://www.ppmy.cn/embedded/142533.html

相关文章

基于群晖搭建个人图书架-TaleBook based on Docker

前言 在群晖Container Manager中部署失败&#xff0c;转通过ssh部署。 一、准备工作 名称备注群晖SSH“终端机和SNMP”中启用SSH软件secureCRT等docker-compose.ymlGithub下载并修改 二、过程 2.1 创建本地文件夹 本地路径为&#xff1a; /docker/Calibre/data 2.2 下载d…

22智能 图

例题 根据下列顶点之间的关系&#xff0c;画出相应的图结构 A -> B, C, D B -> A, C, C -> A, D, E, D -> B, E, E -> C, 数据结构&#xff1a;使用邻接表表示图&#xff0c;每个顶点有一个链表来存储与它相邻的顶点。 功能&#xff1a; 创建图。 添加边。 打…

S4 UPA of AA :新资产会计概览

通用并行会计&#xff08;Universal Parallel Accounting&#xff09;可以支持每个独立的分类账与其他模块集成&#xff0c;UPA主要是为了支持平行评估、多货币类型、财务合并、多准则财务报告的复杂业务需求 在ML层面UPA允许根据不同的分类账规则对物料进行评估&#xff0c;并…

活着就好20241202

亲爱的朋友们&#xff0c;大家早上好&#xff01;今天是2024年12月2日&#xff0c;第49周的第一天&#xff0c;也是十二月的第二天&#xff0c;农历甲辰[龙]年十月三十。在这个全新月份的开始、阳光初升的清晨&#xff0c;愿第一缕阳光悄悄探进你的房间&#xff0c;带给你满满的…

Vue封装sql编辑器

1.封装sql编辑器组件 <template><div :id"id"></div> </template><script lang"ts" setup> import EditorWorker from monaco-editor/esm/vs/editor/editor.worker?worker import * as monaco from monaco-editor import …

pycharm(一)安装

pycharm安装 安装包下载安装&#xff08;一&#xff09;安装&#xff08;二&#xff09; 安装包下载 https://www.jetbrains.com 安装&#xff08;一&#xff09; tar -zxvf pycharm-community-2024.2.4.tar.gz cd pycharm-community-2024.2.4/bin ./pycharm.sh安装&#xf…

深入理解Redis线程模型

前置目标&#xff1a;搭建一个Redis单机服务器。搭建过程参考前面的文档&#xff08;https://blog.csdn.net/Zhuxiaoyu_91/article/details/143904807&#xff09;。 建议调整的redis核心配置&#xff1a; daemonize yes # 允许后台启动 protected‐mode no #关闭保护模…

第七章:并发编程 2.Channels --Go 语言轻松入门

Go语言中的通道&#xff08;Channel&#xff09;是一种特殊的类型&#xff0c;用于在不同的goroutine之间传递数据和同步执行。通道提供了一种安全的方式来避免数据竞争&#xff0c;并且简化了并发编程的复杂性。下面是关于Go Channels的一些关键点&#xff1a; 1. 基本概念 …