我有這個POJO:
public class SetPoint {
private String tagName;
//more fields
//getters and setters
}
我從REST API獲取SetPoints,對它們進行處理,然后再次發送。問題是我想從JSON反序列化SetPoint,例如:
{
"tagnameOpc" : "6GH783",
//more fields
}
但是,當我發送它們時,我想將SetPoint序列化為:
{
"tagName" : "6GH783"
//more fields
}
我的意思是,我希望屬性tagName在每種情況下都被命名為不同的名稱。
這可能嗎?
參考方案
嘗試對getter和setter使用不同的JsonProperty批注。例如。
@JsonProperty("tagnameOpc")
void setTagName(String name)
@JsonProperty("tagName")
String getTagName()
如果這樣不起作用,請嘗試使用額外的二傳手
@JsonIgnore
void setTagName(String name)
@JsonProperty("tagnameOpc")
void setTagNameOpc(String name) {
setTagName(name);
}
@JsonProperty("tagName")
String getTagName()
YAML Jackson-映射Integer屬性時出現NullPointerException - java
杰克遜2.6.5我嘗試將YAML文件映射到包含Integer屬性的POJO,當它讀取數字屬性時會拋出: com.fasterxml.jackson.databind.JsonMappingException :(為java.lang.NullPointerException)有趣的是,如果我單引號文件中的數字屬性,它將解析它們很好(我想它將字符串轉換為整數)…如何將Jackson的TypeReference與泛型一起使用? - java
對于json映射,我使用以下方法:public static T mapJsonToObject(String json, T dtoClass) throws Exception { ObjectMapper mapper = new ObjectMapper(); return mapper.readValue(json, new T…java:繼承 - java
有哪些替代繼承的方法? java大神給出的解決方案 有效的Java:偏重于繼承而不是繼承。 (這實際上也來自“四人幫”)。他提出的理由是,如果擴展類未明確設計為繼承,則繼承會引起很多不正常的副作用。例如,對super.someMethod()的任何調用都可以引導您通過未知代碼的意外路徑。取而代之的是,持有對本來應該擴展的類的引用,然后委托給它。這是與Eric…Java:BigInteger,如何通過OutputStream編寫它 - java
我想將BigInteger寫入文件。做這個的最好方式是什么。當然,我想從輸入流中讀取(使用程序,而不是人工)。我必須使用ObjectOutputStream還是有更好的方法?目的是使用盡可能少的字節。謝謝馬丁 參考方案 Java序列化(ObjectOutputStream / ObjectInputStream)是將對象序列化為八位字節序列的一種通用方法。但…Java-如何將此字符串轉換為日期? - java
我從服務器收到此消息,我不明白T和Z的含義,2012-08-24T09:59:59Z將此字符串轉換為Date對象的正確SimpleDateFormat模式是什么? java大神給出的解決方案 這是ISO 8601標準。您可以使用SimpleDateFormat simpleFormat = new SimpleDateFormat("yyyy-MM…