为什么要将获取到的值赋值到product里面呢,不能直接使用updateProductReq获取到的值进行修改?

为什么要将获取到的值赋值到product里面呢,不能直接使用updateProductReq获取到的值进行修改?

正在回答

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

1回答

同学你好,仅从最终结果看,直接使用updateProductReq是没有问题的。但是在实际开发的时候,会有比较严格的编码规范,例如传递数据时,要么使用实体类(entity或者pojo),要么使用数据传输类(DTO),使用其他类是不允许的。

制定这样的规定,目的是在复杂逻辑代码的后续维护中,不需要过多的去阅读代码,只需要针对对应的类型进行维护即可。

祝学习愉快~

  • 叶锦辉 提问者 #1

    在《java工程师2023》中,第31周课程的代码写法

    from类是否属于DTO?

    https://img1.sycdn.imooc.com/climg/65a4d9ef0955086e11940512.jpg

    2024-01-15 15:09:33
  • 好帮手慕小蓝 回复 提问者 叶锦辉 #2

    同学你好,同学截图的代码是将form的内容进行了格式化,先将form进行格式化,变成一个专门用于传递数据的HashMap,然后调用Service的时候传递的也是HashMap而不是form对象,并没有将form对象向下(Service层)继续传递。上面同学的问答截图中,是要调用Service层的update方法的,老师进行处理,也是为了不将updateProductReq直接传递。

    实际上这两张截图做的事情是一样的。当然,如果更加严谨一点,上面截图中最佳的处理方式也是单独声明一个DTO类。这里虽然没有严格使用DTO,但没有将参数对象直接进行传递,而是使用了HashMap进行处理,也是可以的。

    在这个问答中,老师要强调的是,按照规范,尽量不要将参数对象直接进行传递。当然这个规定也会因就职公司而异,有些公司要求可能会非常严格,有些公司可能压根就没有任何规定。

    祝学习愉快~

    2024-01-15 15:24:41
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
Java工程师 2024版
  • 参与学习       2020    人
  • 提交作业       1249    份
  • 解答问题       1203    个

2024重磅革新,超百小时内容豪华升级,加速提升高级技能与高薪就业竞争力 课程紧贴企业最新人才需求,历经7年持续迭代,帮助万名学子入行转行 从零起点到高阶实战,学习路径稳健顺滑,成就从小白到工程师高薪

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

在线咨询

领取优惠

免费试听

领取大纲

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