当前位置: 首页 > 面试题库 >

SonarQube抱怨将ResponseEntity与通配符一起使用

步致远
2023-03-14
问题内容

我使用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不再抱怨了,现在的代码似乎更简单了。



 类似资料:
  • 想得到一些建议 我的班级结构是这样的 在我的主代码(MainProg)中,我试图使用相同的函数来引用服务类中的2个方法,并看到注释中的编译错误 有没有办法声明我的函数对象,以便可以使用相同的函数对象来引用采用不同类型参数的方法?

  • 问题内容: 在Java的for-each循环中使用泛型时,出现一个奇怪的编译器错误。这是Java编译器错误,还是我真的在这里遗漏了什么? 这是我全班的: 编译器抱怨for-each所在的行:“类型不匹配无法从元素类型Object转换为String。” 如果我进行了微妙的更改,它将编译为: 我知道确实使用泛型,但是我以完全不相关的方式使用它们。如果我尝试遍历T类型的某些内容并返回a 或某种内容,我可

  • 我有这个类来启动SpringCloudConfig服务器。这是一个Spring Boot应用程序。 应用程序运行正常,我的所有单元测试都正常。然而,在我们的竹子管道中,它将初始一个声纳过程来分析代码。我们不断收到这些小警告,表示以下内容: 我知道这是一个小问题,但我的任务是从代码中删除这些内容。 理想情况下,您应该将类标记为final并提供一个私有构造函数,或者所有搜索都提供一个解决方案。但是,S

  • 问题内容: 我必须使用JDBC写入数据库(不选择休眠/ ibatis),而我的数据库是Oracle 11g。 我创建以下查询: 但是我的。生成无效的符号异常。但是当我在松鼠中执行查询时,它就被提交了。有人知道为什么会这样吗? 问题答案: 正如我在上面的评论中所述,问题可能是由于SQL语句末尾的多余分号引起的。看这篇文章 您可能还需要查看PreparedStatments,以使您的生活更轻松。这是上

  • [Error]org.testng.testngException:无法将@Test annotated方法[testLoginPage]与[interface java.util.Map]插入。有关本机依赖项注入的更多信息,请参阅http://testng.org/doc/documentation-main.html#native-dependent ency-injection at org

  • 泛型lambdas能利用“替换失败不是错误”规则吗?例子 是否有任何解决方法或计划将其包含在语言中?此外,由于通用lambda是引擎盖下的模板化函数对象,因此无法做到这一点不是有点奇怪吗?