zoukankan      html  css  js  c++  java
  • P31 整体更新或新增 PUT



    之前我们做的一个Controller CompanyCollectionsController

    这个方法传进来一组id。通过id来获取一组company

    针对这个controller传过来一组要更新的company。实际上很少这么去做。这里不这么做。

    今天的内容(上面的内容看不看都行。)


    回顾post

    回顾put





    put可以使用带着id的URI来进行创建

    开始写代码

    修改这里的代码,EmployeeController的updateEmployeeForCompany的action

    如果这里我们通过EmployeeId查不到Entity的话。这里我们就不返回404NotFound了 。这里我们就直接创建一个。


    先把entity转换为Employee然后,给EmployeeId赋值,然后调用添加Employee的添加方法。

    save保存数据


    由于我们是创建资源,所以需要返回创建这个资源的;链接

    复制过来,只需要改下entity


    返回的类型我们就改下

    测试

    这是之前的一个put请求

    这里的id对应的是存在的资源


    id的最后四位改成4个0

    返回了201。新生成的id就是我们传递过来的id

    再发送一个同样的请求,这次返回204。因为这个资源已经存在了 所以他走的就是更新操作。

    执行一次请求和多次请求对资源的副作用是一样的。这里特地使用了guid作为主键这样可以通过我们的url传递进来由客户端指定了id.
    如果使用了int等自增类型就不行了。
     

    put这里就讲到之类,实际上put用的比较少。

    很少会去资源做整体的更新。用到最多的还是局部更新。


     

    结束




     

  • 相关阅读:
    python学习Day21--内置函数、反射
    python学习Day20--属性、类方法和静态方法+类多继承算法补充
    python学习Day19--面向对象的三大特性
    python学习Day18--继承
    python学习Day17--名称空间
    python学习Day16--面向对象
    python学习Day15--递归与二分查找
    python学习Day14--内置函数
    c# 深克隆与浅克隆
    css test-align 和 margin 居中什么区别
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/14094991.html
Copyright © 2011-2022 走看看