在 Spring Boot RestController 中,我使用 springframework 类响应实体返回端点调用的响应。
我最近发现有两种方法可以实例化这个类。
使用构造函数:
response = new ResponseEntity<MyDto>(myDto, myHeaders, HttpStatus.OK);
使用静态生成器:
response = ResponseEntity.ok().headers(myHeaders).body(myDto);
生成的实例看起来是相同的。
我想知道,各自的优点和缺点是什么?在什么情况下我应该优先使用其中一种?
使用构造函数,您必须提前构造其参数,而使用构建器,您可以通过一个流畅的语句来完成此操作。
// constructor
MultiValueMap<String, String> headers = ...;
ResponseEntity<String> resp = new ResponseEntity(headers, HttpStatus.OK);
// builder
ResponseEntity<String> resp = ResponseEntity.ok()
.header("header1", "value1")
.header("header2", "value2")
.build();
此外,对于具有一长串参数的构造函数,很难了解每个参数的语义。在这种情况下,我更喜欢建筑商。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)