下面是我在Java中使用傑克遜解析JSON字符串收到以下錯誤沒有單一字符串構造/工廠方法
String rspString = "{\"currency\": [{\"USD\": [\"U.S.Dollar\",\"$\"]},\"USD\"]}";
JsonUtil jsonUtil = new JsonUtil();
API1Response configAPI1Rsp = new API1Response();
API1Rsp = (API1Response) jsonUtil.Json2Object(rspString, configAPI1Rsp);
public class API1Response
{
@JsonProperty("Currency")
public List<Currency> currency;
//getters and setters
}
public class Currency()
{
@JsonProperty("USD")
public List<USD> USD
//getters and Setters
}
當我運行上面的代碼我得到下面的錯誤:
Can not instantiate value of type [simple type, class com.sample.test.Currency] from String value ('USD'); no single-String constructor/factory method
上面的響應字符串如何處理USD(對象中的最後一個)如何在java中定義該對象。
在此先感謝。
張貼上述正確的代碼?它編譯? '公共類貨幣()'我認爲它不應該有括號()請張貼確切的工作代碼 – pleft
也添加Currency類的構造函數。我認爲可能沒有一個接受單個字符串或沒有參數,也可能沒有工廠方法。 –
對於該錯字感到抱歉,他們對類貨幣不是「()」。請你舉一個例子,以便它能引導我在正確的路徑 –