507 字
3 分钟
部门新增功能
AI 摘要
部门新增功能
定义
部门新增功能用于保存新的部门数据。前端以 JSON 格式传递部门名称,后端通过 @RequestBody 注解将 JSON 数据绑定到实体对象,完成数据持久化。
接口描述
- 请求方式:POST
- 请求路径:
/depts - 请求参数:JSON 格式
{"name":"研发部"} - 响应数据:
Result(统一响应结果)
实现思路

- Controller 层:接收前端 JSON 请求参数,调用 Service 保存部门
- Service 层:补全基础属性(创建时间、修改时间),调用 Mapper 保存
- Mapper 层:执行 INSERT SQL 语句
JSON 参数接收
前端传递 JSON 格式参数时,使用实体对象接收。
规则:JSON 数据的键名与方法形参对象的属性名相同,并使用 @RequestBody 注解标识。

如上图,JSON {"name":"研发部"} 通过 @RequestBody 绑定到 Dept 对象的 name 属性。
代码实现
Controller 层
@PostMapping("/depts")public Result save(@RequestBody Dept dept) { System.out.println("新增部门, dept=" + dept); deptService.save(dept); return Result.success();}Service 层
// DeptService 接口void save(Dept dept);
// DeptServiceImpl 实现public void save(Dept dept) { // 补全基础属性 dept.setCreateTime(LocalDateTime.now()); dept.setUpdateTime(LocalDateTime.now()); // 保存部门 deptMapper.insert(dept);}Service 层负责补全 createTime 和 updateTime 等非前端传入的基础属性。
Mapper 层
@Insert("insert into dept(name, create_time, update_time) values(#{name}, #{createTime}, #{updateTime})")void insert(Dept dept);在 Mapper 接口中传递多个参数时,封装到一个对象中。SQL 中 #{...} 内写的是对象的属性名,不是表的字段名。
常见场景
- 表单提交新增记录,前端发送 JSON 请求体
- 批量导入时循环调用新增接口
注意事项
@RequestBody注解必须加在 Controller 方法形参前,否则无法绑定 JSON- JSON 的 key 必须与实体类属性名一致
#{...}中应填写 Java 对象的属性名(驼峰命名),而非数据库字段名- Service 层负责补全非业务字段(如时间戳),保持 Controller 层简洁
相关链接
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
最后更新于 2026-05-21,距今已过 30 天
部分内容可能已过时
评论区
[ 标签 ]
[ 分类 ]
[ 公告 ]
如果你喜欢,那么欢迎来到我的世界!
了解更多[ 音乐 ]
找不到相关结果。
[ contents ]
[ 全部文章 ]