当前位置: 首页 > news >正文

tlias的部门的增删改查操作

  1. 查询操作:

controllor层:

@RestController public class DeptController { @Autowired private DeptService deptService; @GetMapping("/depts") public Result list(){ List<Dept> deptList= deptService.findAll(); return Result.success(deptList); } }

Service层:

@Service public class DeptServiceimpl implements DeptService { @Autowired private DeptMapper deptMapper; @Override public List<Dept> findAll() { return deptMapper.findAll(); } }

Mapper层:

@Mapper public interface DeptMapper { @Select("select id, name, create_time, update_time from dept order by update_time") List<Dept> findAll(); }

由于select中的create_time和update_time与实体类中的dept不同,所以查询出来的结果为空,如下图所示:

方法:

这三种方法都可以,建议使用开启驼峰命名

前后端联调:

Nginx的反向代理

2.根据id删除数据

方法一:要在url中带id,否则接口报错

方法二:

当注释了@RequestPara注解,该参数必须传递,接口后必须为/depts?id=?不然删除不成功,接口返回失败,可以设置required为false来关闭这个

方法三:省略@RequsetParam

url带不带id,接口都可以获取成功

新增部门:

@ResponseBody是将对象转为json格式传到客户端

用@RequestBody将json格式数据封装入Dept中,与上面区分开来

controller:

@PostMapping ("/depts") public Result add(@RequestBody Dept dept){ System.out.println("新增部门"+dept); deptService.add(dept); return Result.success(); }

Service:

@Override public void add(Dept dept) { //1.完善创建事件 dept.setCreateTime(LocalDateTime.now()); dept.setUpdateTime(LocalDateTime.now()); deptMapper.insert(dept); }

Mapper层:

@Insert("insert into dept(name, create_time, update_time) values(#{name}, #{createTime}, #{updateTime})") void insert(Dept dept);

3.修改数据

分两部:1.查询回显 2.修改数据

查询回显需要用到路径参数:用到PathVariable,如果参数值名称和路径参数id相同则可以省略其中的("id")

回显部分:

controller:

@GetMapping("/depts/{id}") public Result getInfo(@PathVariable Integer id){ System.out.println("根据id查询部门:" +id); Dept dept = deptService.getById(id); return Result.success(dept); }

Service:

@Override public Dept getById(Integer id) { Dept dept = deptMapper.getById(id); return dept; }

Mapper:

@Select("select id,name,dept.create_time,dept.update_time from dept where id = #{id}") Dept getById(Integer id);

2.数据修改:

controller:

@PutMapping("/depts") public Result update(@RequestBody Dept dept){ System.out.println("修改的部门" + dept); deptService.update(dept); return Result.success(); }

Service:

@Override public void update(Dept dept) { dept.setUpdateTime(LocalDateTime.now()); deptMapper.update(dept); }

Mapper:

@Update("update dept set name = #{name},update_time = #{updateTime} where id = #{id}") void update(Dept dept);

总结:

公共的路径都是/depts上可以抽取到类上

http://www.zskr.cn/news/111843.html

相关文章:

  • 生产环境Helm实战:从零搭建高可用应用发布流水线
  • 问题:本地启动项目,想让其他人在他们自己的电脑也能访问该项目。需要怎么配置代理?
  • LobeChat能否支持星际语言翻译?外星文明假说沟通模型构建
  • LobeChat儿童故事创作助手趣味应用
  • LobeChat错误码对照表:快速定位请求失败原因
  • LobeChat能否定制品牌LOGO?白标解决方案
  • 强调智慧实验室管理系统的设计要考虑的几项问题
  • 如何用AI自动生成HTTP抓包工具?快马平台实战
  • java计算机毕业设计书网 纸电融合知识共享平台 全域图书流转中枢
  • 如何快速实现Unity游戏自动翻译?XUnity.AutoTranslator终极解决方案
  • 聚焦能源招采,中国能源招标网开启绿色新征程!
  • 2025年河南工业大学2025新生周赛(8)
  • 高并发时代的“确定性”挑战——为何稳定性正在成为 JVM 的下一场核心竞争?
  • 唯一屹立的厂商: Elastic 在 2025 AV-Comparatives 测试中的全面胜出
  • 基于VirtualBox使用ISO创建Linux镜像
  • 什么是静态住宅ip,跨境电商为什么要用静态住宅ip
  • 如何在Android中使用StateFlow和MutableStateFlow?
  • 用于氧化石墨烯的多模态表征与激光还原图案化的共聚焦显微技术
  • 剧本杀剧情设计:LobeChat构造悬疑故事情节
  • 盲盒一番赏小程序开发:解锁千亿级潮玩市场的技术密码
  • 场馆预约小程序开发:解锁 “预约经济” 的高效解决方案
  • 应用材料 0195-02529
  • 大模型学习笔记
  • 大模型中 System Prompt 与 Instruction 的区别
  • FreeSWITCH 实用工具集(个人开发整理)
  • 3CTEST解析8/20μs冲击电流测试的多样性挑战与冲击电流发生器选型策略
  • AMAT 0190-27084
  • 【毕业设计】基于JavaWeb的智慧养老院管理系统的设计与实现(源码+文档+远程调试,全bao定制等)
  • 万用表测二极管,发光二极管 正负
  • NFT数字纪念:收藏有价值的AI对话瞬间