我希望我的 JSON 看起来像这样:
{ "information": [{ "timestamp": "xxxx", "feature": "xxxx", "ean": 1234, "data": "xxxx" }, { "timestamp": "yyy", "feature": "yyy", "ean": 12345, "data": "yyy" }] }
到目前为止的代码:
import java.util.List; public class ValueData { private List<ValueItems> information; public ValueData(){ } public List<ValueItems> getInformation() { return information; } public void setInformation(List<ValueItems> information) { this.information = information; } @Override public String toString() { return String.format("{information:%s}", information); } }
和
public class ValueItems { private String timestamp; private String feature; private int ean; private String data; public ValueItems(){ } public ValueItems(String timestamp, String feature, int ean, String data){ this.timestamp = timestamp; this.feature = feature; this.ean = ean; this.data = data; } public String getTimestamp() { return timestamp; } public void setTimestamp(String timestamp) { this.timestamp = timestamp; } public String getFeature() { return feature; } public void setFeature(String feature) { this.feature = feature; } public int getEan() { return ean; } public void setEan(int ean) { this.ean = ean; } public String getData() { return data; } public void setData(String data) { this.data = data; } @Override public String toString() { return String.format("{timestamp:%s,feature:%s,ean:%s,data:%s}", timestamp, feature, ean, data); } }
我只是错过了如何使用 Jackson 将 Java 对象转换为 JSON 的部分:
public static void main(String[] args) { // CONVERT THE JAVA OBJECT TO JSON HERE System.out.println(json); }
我的问题是:我的课程是否正确?我必须调用哪个实例以及如何实现此 JSON 输出?
要使用 Jackson 转换您object的 JSON:
object
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectWriter; ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter(); String json = ow.writeValueAsString(object);