1.一、MyBatis入门

devtools/2024/10/9 4:41:05/

一、MyBatis入门

我们做为后端程序开发人员,通常会使用Java程序来完成对数据库的操作。Java程序操作数据库,现在主流的方式是:Mybatis。

一、什么是MyBatis?

在这里插入图片描述

MyBatis官网的解释:

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

什么是 MyBatis?
  • MyBatis是一款用Java语言编写的持久层框架,它使用ORM实现了结果集的封装。

  • ORM是Object Relational Mapping对象关系映射,简单说,就是把数据库表中字段和实体类实体类的属性对应起来,让开发者通过操作实体类就可以实现操作数据库表,它封装了JDBC操作的许多细节,使开发者只需要关注SQL语句本身,而无需关心注册驱动、创建连接等复杂过程。

  • ORM:Object-Relation-Mapping,也就是对象关系映射,是一种程序设计思想,MyBatis就是ORM的一种实现方式,简单来说就是将数据库中查询出来的数据映射到对应的实体中,底层通过反射机制来自动赋值。

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

  • MyBatis是一款优秀的 持久层 框架,用于简化JDBC的开发。

  • MyBatis本是 Apache的一个开源项目iBatis,2010年这个项目由apache迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。

  • 官网:MyBatis 中文网 官网 (p2hp.com)

  • 现在基本上使用的都是主流的MyBatis框架来简化JDBC的开发。

  • 框架:是一个半成品软件,是一套可重用的、通用的、软件基础代码模型。在框架的基础上 进行软件开发更加高效、规范、通用、可拓展。

二、MyBatis入门

1. 快速入门

MyBatis操作数据库的方式和图形化界面工具操作数据库的方式,底层的逻辑是一样的

1.1 入门程序分析

以前我们是在图形化客户端工具中编写SQL查询代码,发送给数据库服务器来执行,数据库执行后返回操作结果。img

图形化工具会把数据库执行的查询结果,使用表格的形式展现出来:

img

现在使用Mybatis操作数据库,就是在Java程序当中来编写SQL查询代码,然后再将这条SQL语句发送给数据库服务器来执行,数据库执行后返回结果给Java程序。

img

Mybatis(Java程序)会把数据库执行的查询结果,使用实体类封装起来(一行记录对应一个实体类对象),也就是说,返回的每一条数据都会封装为一个对象,表中的字段最终会自动地封装到对象的属性当中。

img

建议让表中字段名与类中属性名保持一致,这样框架就可以完成自动封装

Mybatis操作数据库的步骤:

  1. 准备工作(创建springboot工程、数据库表user、实体类User) [实体类用来封装用户信息]
  2. 引入Mybatis的相关依赖,配置Mybatis(配置数据库连接信息)
  3. 编写SQL语句(注解/XML)
1.2.1 准备工作
1.2.1 准备工作

1.2.1.1 创建springboot工程

创建springboot工程,并导入 mybatis的起步依赖、mysql的驱动包。

Location代表的是我们所创建的这个模块放在哪一个磁盘目录下。

在这里插入图片描述

项目工程创建完成后,自动在pom.xml文件中,导入Mybatis依赖和MySQL驱动依赖


http://www.ppmy.cn/devtools/123195.html

相关文章

Leetcode 377. 组合总和Ⅳ 入门dp C++实现

问题:Leetcode 377. 组合总和Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。 题目数据保证答案符合 32 位整数范围。 算法1: 和爬楼梯一样,定义 …

docker compose入门1—概念介绍

Docker Compose 是 Docker 的一个工具,专门用于定义和运行多容器 Docker 应用程序。它通过使用一个配置文件(通常是 docker-compose.yml)来简化管理多个容器的流程,尤其适用于开发、测试和轻量级的生产环境。Compose 工具可以帮助…

Spring Boot:打造下一代医院管理系统

3系统分析 3.1可行性分析 通过对本医院管理系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本医院管理系统采用JAVA作为开发语言,Spring Boot框…

阿里面试: RocketMQ如何实现每秒上十万QPS的超高吞吐量读取的?

这玩意儿表面看上去挺牛逼,但其实背后的逻辑和套路,在咱们开发里见过的那些招数,都能找到影子。 今天小北和大家一起系统化的梳理梳理一遍,让大家功力猛增,吊打面试官。 1. 消息存储:巧妙利用顺序写 先说…

【Git原理与使用】远程操作标签管理

远程操作&&标签管理 1.理解分布式版本控制系统2.新建远程仓库3.克隆远程仓库4.向远程仓库推送5.拉取远程仓库6.配置 Git7.配置命令别名8.标签管理8.1创建标签8.2操作标签 点赞👍👍收藏🌟🌟关注💖💖…

算法知识点————贪心

贪心:只考虑局部最优解,不考虑全部最优解。有时候得不到最优解。 DP:考虑全局最优解。DP的特点:无后效性(正在求解的时候不关心前面的解是怎么求的); 二者都是在求最优解的,都有最优…

SpringBoot中,接口签名,通用方案,以确保接口的安全性

1. 为什么需要接口签名? 接口签名目的:防止第三方伪造请求。请求伪造:未经授权的第三方构造合法用户的请求来执行不希望的操作。转账接口示例:展示了如果接口没有安全措施,第三方可以轻易伪造请求,例如将资…

springboot自动配置

自动配置的核心就在SpringBootApplication注解上,SpringBootApplication这个注解 底层包含了3个注解,分别是: SpringBootConfiguration ComponentScan EnableAutoConfiguration EnableAutoConfiguration这个注解才是自动配置的核心,它 封…