我使用SpringBoot进行REST Web服务开发,并使用SonarQube进行静态分析。
我的应用程序中有一些端点,它们的外观如下:
@PostMapping ResponseEntity<?> addSomething(@RequestBody Some object) { // some code there return new ResponseEntity<>(HttpStatus.NO_CONTENT); }
SonarQube抱怨将ResponseEntity与通配符一起使用,并向我报告了一个 严重问题:“返回参数中不应使用通用通配符类型” 。
我想知道是否应该在SonarQube中禁用此验证,或者针对这些情况提出不同的返回类型。
你怎么看待这件事?
最终,我<?>从返回值中删除了代码,现在代码如下所示:
<?>
@PostMapping ResponseEntity addSomething(@RequestBody Some object) { // some code there return new ResponseEntity<>(HttpStatus.NO_CONTENT); }
SonarQube不再抱怨了,现在的代码似乎更简单了。