Java Spring 入门:从增删改查开始
目录
一、引言
对于初学者来说,通过简单的示例代码来理解和实践增删改查(CRUD)操作是学习 Spring 框架的一个快速且有效的方法。本文将通过一系列基本的示例代码,展示如何在 Spring 中实现 CRUD 操作,帮助您快速入门。
二、Java Spring 框架简介
Spring 框架是一个开源的 Java 平台,它提供了全面的基础设施支持,帮助开发者更容易地创建 Java 应用程序。Spring 的核心特性是控制反转(IoC)和依赖注入(DI),这些特性有助于降低代码耦合度,提高代码的可维护性和可测试性。
三、开发环境搭建
1. 打开 IntelliJ IDEA 并创建新项目
-
启动 IntelliJ IDEA,选择 “Create New Project(新建—项目)” 选项。

2. 选择 Spring Boot 项目模板
-
在新建项目界面,选择 “Spring Boot” 作为项目模板。Spring Boot 是一个基于 Spring 框架的开源 Java 基础框架,它简化了基于 Spring 的应用开发,提供了快速开发、部署、运行 Spring 应用的一整套基础设施。

3. 配置项目基本信息

-
名称:填写项目名称,例如
Spring_example。这是项目的名称,也是最终生成的项目文件夹名称。 -
位置:选择项目在本地的存储路径。这是项目文件在您的计算机上存储的位置。
-
语言:选择项目使用的语言,例如 Java。Java 是 Spring Boot 支持的主要编程语言之一。
-
类型:选择构建工具,例如 Maven。Maven 是一个项目管理和理解工具,它使用一个名为 POM(Project Object Model)的 XML 文件来描述项目的构建过程、依赖关系等。选择 Maven 可以让您更方便地管理项目的依赖和构建过程。
-
组:填写项目的组 ID,例如
com.example。这是项目的组织唯一标识符,通常使用反向域名格式。 -
工件:填写项目的工件 ID,例如
Spring_example。这是项目的名称,也是最终生成的 JAR 文件的名称。 -
JDK:选择项目使用的 JDK 版本,例如
23 Oracle OpenJDK 23.0.2。这是项目编译和运行时使用的 Java 开发工具包版本。 -
Java 版本:选择项目使用的 Java 版本,例如
17。这是项目编译时使用的 Java 语言版本。 -
打包:选择项目的打包方式,例如
Jar。JAR(Java Archive)是一种打包 Java 类文件和相关资源文件的压缩包格式。选择 JAR 可以让您生成一个可执行的 JAR 文件,方便部署和运行。
4. 选择依赖项

-
选择所需的 Spring Boot 依赖项,例如
Spring Web。Spring Web 是构建 Web 应用程序的基础,它提供了构建 RESTful 应用所需的各种组件,如 Spring MVC 和 Spring WebFlux。选择 Spring Web 可以让您快速开始构建 Web 服务。
5. 生成项目
-
点击 “创建” 按钮,IntelliJ IDEA 将自动下载并导入项目。

6. 生成项目
以下是您创建的 Spring 项目目录结构,以及各个文件或文件夹的实际作用:

四、实现增删改查操作
在项目目录src\main\java\com\example\spring_example中新建文件夹Controller用于放置Java代码。

在Controller文件夹下新建Java类 ,在弹出的窗口中输入类名 例如:“ExampleController” 。

接下来就可以在这里进行代码编写了。

1.示例代码
-
@GetMapping("/hello"):响应 HTTP GET 请求,返回存储的数据。
@GetMapping("/hello")
public String hello() {
// 检查nameAges是否为空,若为空则初始化一个空的HashMap实例
if (nameAges == null){
nameAges = new HashMap<>();
}
// 返回字符串形式的问候语,并附带当前存储的所有姓名与年龄信息
return "hello world: " + nameAges.toString();
}
-
@PostMapping("/hello"):响应 HTTP POST 请求,添加新的数据。
@PostMapping("/hello")
public String helloPost(String name, int age) {
// 将传入的姓名和年龄添加到map中
nameAges.put(name, age);
// 返回成功添加的消息
return "add name " + name + ", age= " + age;
}
-
@PutMapping("/hello"):响应 HTTP PUT 请求,更新已存在的数据。
@PutMapping("/hello")
public String helloPut(String name, int age) {
// 更新已存在的姓名对应的年龄值
nameAges.replace(name, age);
// 返回更新成功的消息
return "update name " + name + ", age= " + age;
}
-
@DeleteMapping("/hello/{name}"):响应 HTTP DELETE 请求,根据名称删除数据。
@DeleteMapping("/hello/{name}")
public String helloDelete(@PathVariable String name) {
// 从map中移除指定姓名的条目
nameAges.remove(name);
// 返回删除成功的消息
return "delete name " + name;
}
2.完整示例代码
// 声明包名,表示该类属于哪个包
package com.example.spring_example.Controller;
// 导入所需的Spring框架注解和Java标准库中的HashMap类
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
// 使用@RestController注解标记这是一个控制器类,
// 它会自动将返回值序列化为JSON并直接写入HTTP响应体中
@RestController
public class ExampleController {
// 处理GET请求的方法,映射路径是"/hello"
@GetMapping("/hello")
public String hello() {
// 检查nameAges是否为空,若为空则初始化一个空的HashMap实例
if (nameAges == null){
nameAges = new HashMap<>();
}
// 返回字符串形式的问候语,并附带当前存储的所有姓名与年龄信息
return "hello world: " + nameAges.toString();
}
// 静态变量nameAges用于保存姓名到年龄的映射关系
private static HashMap<String, Integer> nameAges = new HashMap<>();
// 处理POST请求的方法,映射路径也是"/hello"
@PostMapping("/hello")
public String helloPost(String name, int age) {
// 将传入的姓名和年龄添加到map中
nameAges.put(name, age);
// 返回成功添加的消息
return "add name " + name + ", age= " + age;
}
// 处理PUT请求的方法,同样映射到"/hello"路径
@PutMapping("/hello")
public String helloPut(String name, int age) {
// 更新已存在的姓名对应的年龄值
nameAges.replace(name, age);
// 返回更新成功的消息
return "update name " + name + ", age= " + age;
}
// 处理DELETE请求的方法,映射路径包含动态部分"{name}"
@DeleteMapping("/hello/{name}")
public String helloDelete(@PathVariable String name) {
// 从map中移除指定姓名的条目
nameAges.remove(name);
// 返回删除成功的消息
return "delete name " + name;
}
}
五、使用 Postman 测试
因为我们目前的代码编写属于后端程序,没有对应的前端来进行交互,所以我们可以选择通过Postom来进行前端测试。
在开发 Web 服务时,测试是确保应用质量和功能完整性的重要环节。Postman 是一个流行的 API 开发和测试工具,它提供了一个用户友好的界面和强大的功能来测试 RESTful API。
本文使用了于Postoman相似的测试工具Apifox,具体使用教程详情:
https://blog.csdn.net/m0_74907886/article/details/149811716
-
配置接口,获取所有数据
-
请求类型:GET
-
URL:
http://localhost:8080/hello -
预期结果:返回所有存储的数据。



-
-
添加数据
-
请求类型:POST
-
URL:
http://localhost:8080/hello -
请求参数:
-
name: John Doe
-
age: 30
-
-
预期结果:返回添加的数据信息。

-
-
更新数据
-
请求类型:PUT
-
URL:
http://localhost:8080/hello -
请求参数:
-
name: John Doe
-
age: 31
-
-
预期结果:返回更新后的数据信息。

-
-
删除数据
-
请求类型:DELETE
-
URL:
http://localhost:8080/hello/John%20Doe -
预期结果:返回删除的数据信息。


-
六、总结
通过本文的介绍,您已经学会了如何在 Spring 中通过简单的示例代码实现增删改查操作。这些基本操作是学习 Spring 框架的起点,帮助您理解 Spring 的核心概念和功能。希望本文能帮助您快速入门 Spring 开发。如果您有任何问题或建议,欢迎在评论区留言,我们一起交流学习!
更多推荐


所有评论(0)