首页 > 其他分享 >项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody

时间:2023-03-31 22:04:12浏览次数:41  
标签:模态 请求 前端 改查 RequestBody 添加 radio 节点


系列文章目录

文章目录

  • 系列文章目录
  • 18-添加子节点-目标和思路
  • 19-添加子节点-前端:打开模态框
  • 20-添加子节点-前端:发送Ajax请求
  • ==代码里面实现模拟用户点击重置==
  • 21-添加子节点-后端
  • ==bug发现 异步的问题 :每次加载数据的时候都要考虑一下异步的问题==
  • 22-更新节点-目标和思路
  • 23-更新节点-前端:打开模态框
  • 24-更新节点-前端:发送Ajax请求
  • 25-更新节点-后端
  • 26-更新节点-小结
  • 27-删除节点-目标和思路
  • 28-删除节点-前端:打开模态框
  • 29-删除节点-前端:发送Ajax请求
  • 30-删除节点-后端
  • ==【非常重要的@RequestBody知识】当请求体是Json对象字符串的时候,我们就必须要告诉服务器==
  • ==@RequestParam和@RequestBody 小总结==
  • ==31-@RestController注解=@ResponseBody+@Controller==

18-添加子节点-目标和思路

菜单的维护(增删改查)和我们前面所学的角色管理基本上是一样的了

首先要 有 思路:

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点

19-添加子节点-前端:打开模态框

模态框这里我们直接复制粘贴就行了

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_02


主要是里面涉及的前端较多,手写的话,要花不少时间

我们到时候再来研究就好,毕竟不是前端工程师,不需要现在就对前端那么精通

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_03

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_04


return false 这一段代码不要漏掉,这是取消默认行为不写这段的话,就直接跳转走了

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_05


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_06

其实我们不可忽略的一个事情就是我们在保存一个节点的时候 必须要知道父节点是谁

那么这个 pid怎么得到呢

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_07


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_08


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_09


如上图,获取到父 id 后 打开模态框即可

下一步是确认添加,即 给 模态框里面的保存按钮添加单击相应函数,并且发送Ajax请求

20-添加子节点-前端:发送Ajax请求

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_10


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_11


这里的 $.trim() 意思是 删除字符串开始和末尾的空格ajax的参数我们对照着实体类来写

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_12


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_13


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_14


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_15

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_16


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_17


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_18


清理表单我们还没做,要怎么做呢?

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_19


我们发现,点一下,重置,可以恢复到初始状态

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_20


那么我们就要想想,怎么我们在代码里面直接调用一下重置,不需要用户手点

其实也可以,我们还是要绑定一个单击响应函数
如下

代码里面实现模拟用户点击重置

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_21


click里面不传function就相当于点了一下按钮

接下来就是后端

21-添加子节点-后端

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_22


确认一下 id 是否 是 自增

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_23


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_24

bug发现 异步的问题 :每次加载数据的时候都要考虑一下异步的问题

有没有这种情况,我们还添加完就加载数据了异步当然是有可能的

所以我们要加个参数

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_25


这个问题不一定能每次重现,但是却是一个未知的隐患,应该必须要处理

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_26

还有一种处理方式就是代码的位置改动一下,如下。不过我们为了练习一下异步和同步推荐用上面的方式

工作中用这种比较简单,少写一行代码

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_27

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_28


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_29


这样添加就没啥问题了

22-更新节点-目标和思路

更新与新增最大的区别就是要回显

那么树形开发的回显怎么做

其中的思路之一是,我们拿到id然后去数据库里面查一下,拿到node对象,

再放到前端的模态框里面去

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_30

23-更新节点-前端:打开模态框

复制一下代码

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_31


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_32


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_33


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_34


然后测一下点击修改 能不能打开模态框

效果如下:

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_35


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_36


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_37


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_38


文本框简单

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_39


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_40


那单选按钮怎么处理呢?

注意要放数组里面

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_41


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_42


测试看看

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_43

24-更新节点-前端:发送Ajax请求

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_44

25-更新节点-后端

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_45


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_46


特别注意这里

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_47

26-更新节点-小结

27-删除节点-目标和思路

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_48

28-删除节点-前端:打开模态框

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_49

最后效果:

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_50

29-删除节点-前端:发送Ajax请求

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_51


注意操作完成之后需要关闭模态框

30-删除节点-后端

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_52

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_53


注意

猜一下,如果这样获取参数会不会报错

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_54


答案是 会,错误码是415

错误码

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_55


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_56

即使是这样还是会报错,因为思路错了,@RequestBody 接收的必须是前端那边就是json对象的字符串数据,要进行转换

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_57


除非是像这样转换一下

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_58


前端请求传Json对象则后端使用@RequestParam;

前端请求传Json对象的字符串(前端必须要用contentType说明请求体内容)
则后端使用@RequestBody,参数类型有要求,必须要跟前端对应,一般为对象等

【非常重要的@RequestBody知识】当请求体是Json对象字符串的时候,我们就必须要告诉服务器

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_59


正确的案例:对象

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_60


正确案例2:数组

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_61


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_62


window.roleIdArray 这里面存的 是数组

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_63


这样后端才能用 @RequestBody List ids 去接收

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_删除节点_64


这样后端才能用 @RequestBody List ids 去接收

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_65

扯回来,如果是最开始那样,前端请求的是Json对象则后端使用@RequestParam即可

如下 ,后端用@RequestParam接收参数即可解决

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_66

@RequestParam和@RequestBody 小总结

总结一下就是 三种前端传参方式,对应后端三种不同的接收参数的方式

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_67


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_68

31-@RestController注解=@ResponseBody+@Controller

我们发现一个问题,每个方法都有@ResponseBody 根据我们对springMvc 的理解,那么肯定可以提取
java最爱的就是各种提取了

我们下面就来试试

先注释一下代码

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_69


== 这样@ResponseBody 不用写了 @Controller 也不用写了==

项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_子节点_70


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_java_71


项目一众筹网05_03_树的节点的增删改查、radio、代码里面实现模拟用户点击重置、每次加载数据的时候都要考虑一下异步的问题、@RestController注解的使用、@RequestBody_模态框_72

分布式架构里面也经常会用@RestController


标签:模态,请求,前端,改查,RequestBody,添加,radio,节点
From: https://blog.51cto.com/u_15800767/6162556

相关文章