Spring boot 什么是责任?我为什么要保留责任?

Spring boot 什么是责任?我为什么要保留责任?,spring-boot,spring-mvc,Spring Boot,Spring Mvc,我可以用两种方式定义GET方法: public ResponseEntity<Pet> getPetById(Long id); 它们似乎是等价的,只是第一个涉及更多的样板代码。 那么,使用ResponseEntity的原因是什么?它带来了什么好处?这种区别很容易解释。使用ResponseEntity时,您可以完全控制响应的内容。您可以更改标题、状态代码等。。。 当您不使用ResponseEntity作为控制器方法的返回类型时,spring将“自动”创建默认ResponseEnti

我可以用两种方式定义GET方法:

public ResponseEntity<Pet> getPetById(Long id);
它们似乎是等价的,只是第一个涉及更多的样板代码。
那么,使用ResponseEntity的原因是什么?它带来了什么好处?

这种区别很容易解释。使用ResponseEntity时,您可以完全控制响应的内容。您可以更改标题、状态代码等。。。 当您不使用ResponseEntity作为控制器方法的返回类型时,spring将“自动”创建默认ResponseEntity


因此,使用ResponseEntity的最大优势是您拥有完全的控制权。缺点是它比让Spring发挥它的魔力更冗长。

这能回答您的问题吗?区别在于,在第一个示例中,您可以自己使用builder手动设置标题、响应代码、正文等。
public Pet getPetById(Long id);