簡體   English   中英

使用spring-boot和spring-data的正確PUT方法

[英]Correct PUT method with spring-boot and spring-data

我正在使用Spring Boot和Spring Data構建RESTful API。 我有兩個實體: SiteFloor 一個Site有多個Floors 我想知道什么是制作PUT方法的正確方法? 到目前為止,我在SiteController.class具有以下方法:

@RequestMapping(method = RequestMethod.PUT, value = "/api/sites")
    public void updateSite(@RequestBody Site site){
        sitesService.updateSite(site);
    }

這是SitesService.class

public void updateSite(Site site) {
        sitesRepository.save(site);
    }

模型Site.class具有idname

當我將以下帶有PUT方法的JSON發送到/api/sites ...

{
  "id": 1,
  "name": "SITE 1"
}

...我得到了預期的更新更新的Site實體。

但是我想知道這種實現是否正確? 我是否應該在URI中指定要使用PUT更新的站點ID? 像這樣: /api/sites/{id}

我認為,您可以使用/api/sites/{id}發送PUT請求,在控制器方法中,可以使用id從存儲庫中獲取實體,更改屬性“ name”,然后將其保存在庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM