性能差异--Jackson ObjctMapper.writeValue(writer,val)vs ObjectMapper.writeValueAsString(val)

问题描述 投票:1回答:1

以下两个之间是否存在显着的性能差异?

String json = mapper.writeValueAsString(searchResult);
response.getWriter().write(json);

VS

mapper.writeValue(response.getWriter(), searchResult);
jackson objectmapper jackson-databind jackson2 fasterxml
1个回答
0
投票

writeValueAsString JavaDoc说:

可用于将任何Java值序列化为String的方法。功能上等同于使用StringWriter调用writeValue(Writer,Object)并构造String,但效率更高。

所以,万一,你想写JSONStringwriteValue更好地使用这个方法。这两种方法都使用_configAndWriteValue

在你的情况下,最好将JSON直接写入response.getWriter()而不是生成String对象,然后将其写入response.getWriter()

© www.soinside.com 2019 - 2024. All rights reserved.