【问题标题】:Performance difference - Jackson ObjctMapper.writeValue(writer, val) vs ObjectMapper.writeValueAsString(val)性能差异 - Jackson ObjctMapper.writeValue(writer, val) vs ObjectMapper.writeValueAsString(val)
【发布时间】:2019-04-01 15:11:12
【问题描述】:

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

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

mapper.writeValue(response.getWriter(), searchResult);

【问题讨论】:

    标签: jackson objectmapper jackson-databind jackson2 fasterxml


    【解决方案1】:

    writeValueAsStringJavaDoc 说:

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

    因此,如果您想将JSON 写入String,使用此方法比writeValue 好得多。这两种方法都使用_configAndWriteValue

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-08
      • 2015-01-31
      • 2023-04-09
      • 1970-01-01
      • 2019-07-18
      • 2017-08-13
      • 1970-01-01
      相关资源
      最近更新 更多