import com.fasterxml.jackson.core.JsonFactory;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.junit.Test;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class JackSonTest {
@Test
public void buildJson() throws IOException {
JsonFactory jsonFactory = new JsonFactory();
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
JsonGenerator generator = jsonFactory.createGenerator(byteArrayOutputStream);
generator.writeStartObject();
generator.writeBooleanField("isBoolean", true);
generator.writeStringField("String", "value");
generator.writeNumberField("number", 2);
generator.writeArrayFieldStart("array");
ObjectMapper objectMapper = new ObjectMapper();
Map<String, String> map = new HashMap<>(2);
map.put("key1", "value1");
map.put("key2", "value2");
for (int i = 0; i < 2; i++) {
objectMapper.writeValue(generator, map);
}
generator.writeEndArray();
generator.writeEndObject();
generator.flush();
generator.close();
System.out.println(byteArrayOutputStream);
}
}
{
"isBoolean":true,
"String":"value",
"number":2,
"array":[
{
"key1":"value1",
"key2":"value2"
},
{
"key1":"value1",
"key2":"value2"
}
]
}