3.5 SpringBootWeb案例

开发规范-Restful

REST(REpresentational State Transfer),表述性状态转换,它是一种软件架构风格

传统风格

http://localhost:8080/user/getById?id=1 GET**:查询id1的用户http://localhost:8080/user/saveUser POST**:新增用户http://localhost:8080/user/updateUser POST**:修改用户http://localhost:8080/user/deleteUser?id=1 GET**:删除id1的用户
REST风格

http://localhost:8080/users/1 GET**:查询id1的用户**

http://localhost:8080/users POST**:新增用户**

http://localhost:8080/users PUT**:修改用户**

http://localhost:8080/users/1 DELETE**:删除id1的用户**

开发规范-统一响应结果

前后端交互统一响应结果Result

开发流程

查看页面原型明确需求->阅读接口文档->思路分析->接口开发-> 接口测试 -> 前后端联调

查询部门

思路:首先 前端发出了一个查询的请求,DeptController接收请求,调用service查询部门,响应,DeptService调用mapper接口查询,DeptMapper进行sql语句查询,获取结果返回到service层,再返回给controller层。

前后端联调

1.开发流程

明确需求--接口文档--思路分析--接口开发

2.接口tiaos

postma测试、前后端联调

3.日志小技巧

@Slf4j

删除

根据id删除部门

@PathVariable是为了获取URL中的动态值,它主要用于请求的URL中提取动态部分的参数值,,通常RESTful风格的API会包含路径参数,这些参数在URL中作为占位符出现。

新增

@RequestMapping

一个完整的请求路径,应该是类上的@RequestMapping的value属性+方法上的@RequestMapping的value属性。

@RequestBody: 用于处理JSON、XML格式的请求数据体,将其转换为Java对象。

修改部门

--根据id查询

DeptController:接收请求参数id,调用service查询部门,响应

@PostMapping @PathVariable

DeptService:调用mapper接口实现查询

DeptMapper:sql语句

--修改部门

员工部门

分页查询

参数1:起始索引 =(页码-1)* 每页显示的记录数

参数2:查询返回记录数 =每一页展示的记录数

select * from emp limit 0,5

前端传递给后端的参数

当前页码:page

每页展示记录数:pageSize

后端给前端返回的数据

数据列表:List

总记录数:total

@RequestParam的属性defaultValue可以来设置参数的默认值。

分页插件PageHelper

PageHelper分页插件

引入依赖:pagehelper-spring-boot-starter

条件分页查询

用动态SQL实现

删除员工

--删除员工、动态删除(动态SQL)

开发批量删除的接口

不需要返回值

EmpController

EmpServiceImpl

EmpMapper

EmpMapper.xml

相关推荐
深蓝轨迹21 分钟前
@Autowired与@Resource:Spring依赖注入注解核心差异剖析
java·python·spring·注解
爱丽_1 小时前
Pinia 状态管理:模块化、持久化与“权限联动”落地
java·前端·spring
luom01022 小时前
SpringBoot - Cookie & Session 用户登录及登录状态保持功能实现
java·spring boot·后端
希望永不加班2 小时前
SpringBoot 核心配置文件:application.yml 与 application.properties
java·spring boot·后端·spring
我真会写代码2 小时前
Spring面试高频题:从基础到源码,通俗拆解+避坑指南
java·spring·面试
毕设源码-朱学姐3 小时前
【开题答辩全过程】以 基于SpringBoot+Vue的百货商品进出货平台为例,包含答辩的问题和答案
java·spring boot·后端
夜空下的星3 小时前
springboot实现Minio大文件分片下载
java·spring boot·后端
程序员老乔6 小时前
Java 新纪元 — JDK 25 + Spring Boot 4 全栈实战(三):虚拟线程2.0,电商秒杀场景下的并发革命
java·开发语言·spring boot
cyforkk7 小时前
Spring AOP 核心揭秘:ProceedingJoinPoint 与反射机制详解
java·python·spring
于慨8 小时前
spring boot
java·数据库·spring boot