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

相关推荐
Q_Q196328847523 分钟前
python的电影院座位管理可视化数据分析系统
开发语言·spring boot·python·django·flask·node.js·php
蚰蜒螟3 小时前
Spring 和 Lettuce 源码分析 Redis 节点状态检查与失败重连的工作原理
java·redis·spring
duration~3 小时前
SpringAI集成MCP
人工智能·后端·spring·ai
悟纤3 小时前
Spring Boot 实用小技巧:多级缓存(Caffeine + Redis)- 第545篇
spring boot·后端·spring
励志成为糕手3 小时前
企业级Spring事务管理:从单体应用到微服务分布式事务完整方案
分布式·spring·微服务·隔离级别·事务管理
MrSYJ4 小时前
UserDetailService是在什么环节生效的,为什么自定义之后就能被识别
java·spring boot·后端
吐个泡泡v6 小时前
Maven 核心命令详解:compile、exec:java、package 与 IDE Reload 机制深度解析
java·ide·maven·mvn compile
Noii.6 小时前
Spring Boot初级概念及自动配置原理
java·spring boot·后端
勿在浮沙筑高台6 小时前
无法获取实体类com.example.springdemo2.entity.po.UserPO对应的表名!
java·spring boot·mybatis
掉头发的王富贵7 小时前
ShardingSphere-JDBC入门教程(上篇)
spring boot·后端·mysql