在响应实体<>中传回字符串还是对象更好?



我有一个返回 ResponseEntity 的控制器。现在我已经修改了这段代码,并使用ObjectMapper添加了一堆过滤器。在此更改之后,我将返回一个字符串作为响应。

示例代码如下:

public ResponseEntity<String> search() {
SearchResult searchResults = service.search(criteria);
objectMapper.setFilterProvider(new SimpleFilterProvider()
                .addFilter("firstFilter", new FirstFilter())
                .addFilter("secondFilter",new SecondFilter()));
        return new ResponseEntity<>(objectMapper.writeValueAsString(searchResults), OK);
}

现在我的问题是,这是一个好方法吗?它有什么影响吗?将实际对象发回与它的字符串变体有什么区别。任何帮助表示赞赏。谢谢!

ResponseEntity<T>表示整个HTTP响应。除了实体本身之外,其 API 还允许您为响应设置标头和状态代码。

从长远来看,返回普通String不会给您带来太大的灵活性。例如,如果需要向响应添加标头,则需要更改方法返回类型。

相关内容

  • 没有找到相关文章

最新更新