5-7问题

5-7问题

老师说在updateCategory实体类接收参数时,除了id其他字段可以不设置 不为null。

为什么?如果修改数据,前端只传了个id, 其他有部分字段是null,我们依然接收,进行处理吗?我知道通过id获取原属性,对原属性进行更改, 但是获取的属性内null,sql会对null进行判断不更新吧。但是,

我看到了老师在后期判断的时候,又写了,对name的不为null的判断, 为啥要把参数效验的注解删了呢??

2/http://img1.sycdn.imooc.com//climg/60c1cd5009f19de214680320.jpg


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕小脸 2021-06-10 19:16:07

同学你好,是的,如果想要更严谨可以对其参数进行非空校验

祝学习愉快~

  • 提问者 rock221 #1

    一般是不是都建议,如果后端用对象接收参数, 建议对应,且不存在多余的属性阿? 这样做的话就是安全些。同时实体类建议单一原则, 避免混用。 

    2021-06-11 17:05:17
  • 好帮手慕小脸 回复 提问者 rock221 #2

    同学你好,是的,可以这样理解

    祝学习愉快~

    2021-06-11 19:02:39
rock221 提问者 2021-06-10 17:22:36

追加,关于提问题1:

如果其他字段不设置 对空的验证的话,那么传来的就是null,老师前面说过

会存在不安全的情况,因为存在多余的字段,比如说前端黑客在攻击的时候,会故意传多余的参数,如果sql语句写的不太好的情况下, 会根据它传入的参数,做出一些额外的查询。 

如果按照文档要求的话, 传入的参数是4个, 最好还是对其进行参数效验非空吧? 严谨写?

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师