0
我正在研究如何將POJO序列化爲json字符串。我正在使用傑克遜庫並遇到問題。將類成員序列化爲JSON對象
在JSON對象的值可以是一個字符串或字符串數組是這樣的...
{"mimeTypes":"all"}
或
{"mimeTypes":["application/pdf", "application/msword"]}
這是我此刻的
@JsonIgnore
private String mimeTypes;
@JsonIgnore
private String[] mimeTypesArray;
@JsonRawValue
@JsonProperty("integration/enabled-mime-types")
private String mimeType;
public void setMimeTypes(String mimeTypes) {
this.mimeTypes = mimeTypes;
mimeType = mimeTypes;
}
public void setMimeTypes(String[] mimeTypes) {
this.mimeTypesArray = mimeTypes;
try {
JSONArray jsonArray = new JSONArray(mimeTypes);
this.mimeType = jsonArray.toString();
} catch (JSONException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
方法
基本上我有一個字符串字段,一個字符串數組的字段,以及一個字符串字段,我想添加到t他是json的對象。我在setter上串行化,所以對象映射器不必選擇使用哪個字段。
這種感覺就像是一種拙劣的做事方式。會有更好的解決方案嗎?我一直在閱讀關於使用傑克遜視圖,但我不知道這是否可能爲我的問題。
它與可變參數很好地工作。感謝那! – jiduvah 2012-08-08 15:34:02
我剛剛意識到可變參量並不適用於反序列化 – jiduvah 2012-08-14 09:45:07