如何在Java中使用Jackson来获取JsonGenerator设置?

JsonGenerator 类可以负责 写入JSON数据作为一个流而不是在存储器中构建对象模型。枚举 JsonGenerator.Feature中提供了可以打开/关闭的设置列表,它包含静态方法values() ,该方法返回包含此枚举 类型的常量的数组。

语法

public static enum JsonGenerator.Feature extends Enum<JsonGenerator.Feature>

示例

import java.io.*;
import com.fasterxml.jackson.core.*;
public class JsonGeneratorSettingsTest {
   public static void main(String[] args) throws IOException {
      StringWriter writer = new StringWriter();
      JsonFactory jsonFactory = new JsonFactory();
      JsonGenerator jsonGenerator = jsonFactory.createGenerator(writer);
      for(JsonGenerator.Feature feature : JsonGenerator.Feature.values()) {
         boolean result = jsonGenerator.isEnabled(feature);
         System.out.println(feature.name() + ":" + result);
      }
      jsonGenerator.close();
   }
}

输出结果

AUTO_CLOSE_TARGET:true
AUTO_CLOSE_JSON_CONTENT:true
FLUSH_PASSED_TO_STREAM:true
QUOTE_FIELD_NAMES:true
QUOTE_NON_NUMERIC_NUMBERS:true
ESCAPE_NON_ASCII:false
WRITE_NUMBERS_AS_STRINGS:false
WRITE_BIGDECIMAL_AS_PLAIN:false
STRICT_DUPLICATE_DETECTION:false
IGNORE_UNKNOWN:false