我对REST API开发比较陌生。我决定使用Spring Boot创建一个博客应用程序,但我的应用程序的设计和结构一直困扰着我。
目前,我的应用程序包括文章和评论模型和存储库。对于这两个模型,我创建了服务类(PostService和CommentService)。在这些类中,我有所有的业务逻辑(目前只是简单的CRUD操作)。
现在,我正在考虑如何设计@RestControler以处理文章。在PostController中,我公开了以下操作:
@PostMapping("/api/posts/create")
public Post create(@RequestBody Post post) { ... }
@GetMapping("/api/posts")
public List<Post> findAll() { ... }
@GetMapping("/api/posts/{id}")
public Post findById(@PathVariable("id") Long id) { ... }
@PutMapping("/api/posts/{id}")
public Post update(@RequestBody Post post) { ... }
@DeleteMapping("/api/posts/{id}")
public void delete(@PathVariable Long id) { ... }
现在我要开始提问了。我想知道,添加评论到帖子的正确设计是什么。
- 我应该使用CommentController类公开所有CRUD方法并使用create方法来添加评论吗?
- 将一个新的方法
addComment
添加到PostController中来创建一个新的评论是否可以?
在我的脑海中,将评论添加到帖子属于帖子,但我真的不确定。
能否给我一些关于这个问题的建议呢?
非常感谢!
再见, Tom