Spring Boot – CRUD 操作
CRUD代表创建、读取/检索、更新和删除,这些是我们在持久性存储上执行的四个基本操作。CRUD是面向数据的,是HTTP 方法的标准化使用,或者有一个术语称为HTTP 动作动词。HTTP 有一些动作动词或方法可以作为 CRUD 操作,请注意,从编程的开发角度来看,它们至关重要,还可以帮助我们更好地进行 Web 开发,还可以帮助我们处理数据库。 在本文中,我们将讨论Spring Boot 中的 CRUD 操作,在此之前,让我们了解什么是标准 CRUD 操作:
- POST:创建新资源
- GET:读取/检索资源
- PUT:更新现有资源
- DELETE:删除资源

顾名思义,
- CREATE 操作:执行 INSERT 语句来创建新记录。
- READ操作:根据输入的参数读取表记录。
- UPDATE 操作:对表执行更新语句。它基于输入参数。
- DELETE 操作:删除表中的指定行。它也基于输入参数。
因此,在本文中,我们将通过创建 Spring Boot 应用程序并使用 H2 数据库来执行一些基本的 CRUD 操作。因此,这里简要解释一下什么是 Spring Boot 和什么是 H2 数据库。
Spring Boot
Spring Boot建立在 Spring 之上,包含 Spring 的所有功能。它现在越来越受到开发人员的青睐,因为它是一个快速的生产就绪环境,使开发人员能够直接专注于逻辑,而不必费力配置和设置。Spring Boot 是一个基于微服务的框架,在其中创建生产就绪的应用程序只需很少的时间。
H2 数据库
H2 是一个用 Java 编写的关系数据库管理系统。它可以嵌入 Java 应用程序中,也可以以客户端-服务器模式运行。H2 的主要特点是:
- 非常快,开源,JDBC API
- 嵌入式和服务器模式;内存数据库
- 基于浏览器的控制台应用程序
- 占用空间小:jar 文件大小约为 2.5 MB
Spring Boot CrudRepository
Spring Boot 中有一个名为 CrudRepository 的接口,其中包含用于 CRUD 操作的方法。它提供了对存储库的通用 Crud 操作。它在包org.springframework.data.repository中定义,并扩展了 Spring Data Repository接口。如果有人想在 Spring Boot 应用程序中使用 CrudRepository,他/她必须创建一个接口并扩展 CrudRepository 接口。
插图:
public interface DepartmentRepository extends CrudRepository<Department, Long> { }
在哪里:
- Department:存储库管理的域类型(通常是实体/模型类名)
- Long:存储库管理的实体的 id 类型(通常是在实体/模型类中创建的 @Id 的包装类)
Spring Boot JpaRepository
JPA 代表Java 持久性 API。它是存储库的特定扩展。JpaRepository定义在包org.springframework.data.jpa.repository 中。它提供与 Jpa 相关的方法,例如刷新持久性上下文和批量删除记录。JpaRepository 包含用于基本 CRUD 操作、分页和排序的 API。通过使用 JpaRepository,我们不需要编写 DDL/DML 查询,而是可以使用 XML/注释。
句法:
public interface JpaRepository<T, ID> extends PagingAndSortingRepository<T, ID>, QueryByExampleExecutor<T>
Spring 数据存储库接口

CRUD 存储库与 Jpa 存储库之间的区别
| CRUD 存储库 |
JPA 存储库 |
| CRUD Repository 扩展了 Repository 接口 |
JpaRepository 扩展了 PagingAndSortingRepository。 |
| 它执行所有 CRUD 操作。它具有 save()、saveAll()、findById()、findAll() 等方法。 |
它包含 CrudRepository 和 PagingandSortingRepository 的 API。它具有 flush()、saveAllAndFlush()、deleteInBatch() 等方法。 |
| CrudRepository 作为基础接口。 |
JpaRepository 扩展了 CrudRepository 和 PagingAndSortingRepository。 |
| 句法: 公共接口 CrudRepository<T,ID> 扩展了 Repository<T,ID> |
句法: 公共接口 JpaRepository<T,ID> 扩展了 PagingAndSortingRepository<T,ID>,QueryByExampleExecutor<T> |
Spring Boot 示例 – CRUD 操作
步骤1:参考这篇文章如何使用IntelliJ IDEA创建Spring Boot项目并创建一个Spring Boot项目。
第 2 步:添加以下依赖项
- Spring Web
- H2 Database
- Lombok
- Spring Data JPA
以下是pom.xml文件的完整代码。请检查是否有遗漏。
- XML
| <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.5.5</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.amiya</groupId> <artifactId>Spring-Boot-Demo-Project</artifactId> <version>1.0.0-SNAPSHOT</version> <name>Spring-Boot-Demo-Project</name> <description>Demo project for Spring Boot</description> <properties> <java.version>11</java.version> </properties> |


1972

被折叠的 条评论
为什么被折叠?



