2014-08-28 101 views
1

我有下面的代碼,基本上讀取一堆JSON字符串,並將它們轉換爲java對象。我的問題是,如果在任何時候,任何JSON字符串轉換失敗,它不會處理其他字符串。我需要的是 -當發生異常時繼續處理

  1. 查找發生錯誤的字符串。
  2. 在異常塊中做一些事情繼續處理。

這是我的代碼從JSON轉換爲Java。

public static <T> T convertToObject(String jsonString,Class<T> classType){ 
    T obj = null; 
    try { 
     obj = objectMapper.readValue(jsonString, classType); 
    } catch (Exception e) { 
     throw new Exception("Unable to convert to DTO :" + e.getMessage(), e); 
    } 
    return obj; 
} 
+1

您捕捉異常,然後拋出的消息「無法轉換......」 ......那麼,你趕上一個新的那第二個例外? – Marcelo 2014-08-28 18:09:57

+0

與上面相同的問題:顯示調用您的函數的代碼。無論您拋出哪種類型的異常,您都必須對其進行修改。 – 2014-08-28 18:10:57

回答

2

我認爲你需要一個自定義的解串器。標準ObjectMapper將全部或全部完成。瞭解更多關於在這裏創造了傑克遜ObjectMapper自定義解串器:

http://www.baeldung.com/jackson-deserialization

+0

+1,但我懷疑這需要執行相當多的工作。 – 2014-08-28 19:18:19