当前位置: 首页 > 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.cnnetsun.cn/news/92443.html

相关文章:

  • 如何快速实现Unity游戏多语言支持:新手完整指南
  • [漫画]《软件方法》逃避思考的伪创新舒适区
  • [漫画]喜欢自编图形的遮羞布
  • LobeChat能否支持星际语言翻译?外星文明假说沟通模型构建
  • 软考 系统架构设计师系列知识点之面向服务架构设计理论与实践(16)
  • J2EE技术及应用实验及报告(黑龙江大学)
  • AI农情数据要素服务平台:让种地靠数据,丰产不盲目
  • JavaScript学习笔记:14.类型数组
  • LobeChat能否定制品牌LOGO?白标解决方案
  • navigatetominiprogram实战应用案例分享
  • 1小时验证创意:右键菜单管理工具原型开发
  • LobeChat能否对接土卫六湖泊数据?甲烷循环与外星地貌研究
  • Axolotl推理缓存:5倍性能提升与70%成本优化的架构革命
  • vue3事件处理详解
  • YOLO目标检测入门:手把手教你跑通第一个demo
  • 1小时搭建:VSCode远程开发环境原型
  • 电商项目实战:Vue3父子组件传值最佳实践
  • 【LLM基础教程】从序列切分到上下文窗口01_为什么序列建模必须切分数据
  • 备赛三--
  • 高并发时代的“确定性”挑战——为何稳定性正在成为 JVM 的下一场核心竞争?
  • C语言之最大公约数和最小公倍数问题
  • LobeChat能否对接Telegram Bot?跨平台消息同步实现
  • AI如何用博图加速工业自动化开发
  • C++:二叉搜索树(BST)完全指南(从概念原理、核心操作到底层实现)
  • Splashtop AEM 在 G2冬季报告中斩获“最佳预估 ROI”殊荣
  • 赋能传统硬件:具身智能如何激活工业机器人的二次生命
  • 【模板:求组合数】信息学奥赛一本通 1648:【例 1】「NOIP2011」计算系数 | 1866:【11NOIP提高组】计算系数 | 洛谷 P1313 [NOIP 2011 提高组] 计算系数
  • 金运环球:金价高位回落,非农与零售数据即将来袭
  • 活动力度大的门头招牌企业
  • 【毕业设计】基于JavaWeb的兽医站管理系统的设计与实现(源码+文档+远程调试,全bao定制等)