基本上,我是用春靴和百里香创建一个餐厅餐饮网站(只是一门课程的练习),在那里,厨师提供自助餐,每个自助餐由不同的菜肴和不同的食材组成(对不起,我的英语)。
我的问题是:我应该用@GetMapping("/chef/{id}/buffets")来表示主厨做的自助餐吗?
还是我应该直接使用("/buffet")?因为对于配料的控制器,我将最终使用("/chef/{id}/buffet/{id}/plate{id}/ingredients"),它看起来很奇怪,但我认为我不能做任何其他方式。
另外,我该如何用thymeleaf把厨师和他自己的自助餐联系起来呢?谢谢你的帮助。
更新:好的,但是现在我被卡住了。假设我使用这个代码来获得一个厨师,特别是:
@GetMapping("/chef/{id}")
public String getChef(@PathVariable("id")Long id, Model model) {
Chef chef = cs.findById(id);
model.addAttribute("chef",chef);
return "chef.html";
}那个厨师做的自助餐该怎么办?
发布于 2022-05-24 15:19:21
问题不是如何在Spring中使用@GetMapping(),而是如何理解REST。
对于您的问题类型,您需要像上面所说的那样公开一个URI:
"/chef/{chef_id}/buffet/{buffet_id}/plate/{plate_id}/ingredients"原因是,正如你上面提到的,每个厨师都有很多自助餐,每个自助餐有很多盘子,每个盘子都有很多配料。
主厨1
公开URI (如/buffet )必须列出数据库中所有厨师的所有自助餐。
下面链接到一篇关于REST https://stackoverflow.blog/2020/03/02/best-practices-for-rest-api-design/良好实践的好文章
https://stackoverflow.com/questions/72364756
复制相似问题