2012-06-27 123 views
0

我有一個REST API,它將JSON返回給它的調用。但是,根據我執行的呼叫,答案會有所不同。使用Gson將爲每個API響應產生不同的POJO對象。處理來自不同JSON API響應的不同POJO

考慮到我有一個處理所有GET請求的IntentService,我只在意圖中傳遞一個URL,處理IntentService中不同響應的最佳方法是什麼?

我一直在搞JSON在Android的一段時間,但我似乎無法找到這個問題的優雅/智能解決方案。我一直在創建一個enum來區分可能的API請求,並在意圖中傳遞所選的enum值,以便IntentService選擇要使用switch語句執行的操作。

謝謝。

回答

0

如果您所得到的所有不同POJO都有共同的商業邏輯,那麼嘗試使用相同的Class並嘗試定製GSON映射策略會很好。

如果您沒有真正的共同邏輯,那麼您可以將您的GSON對象視爲DTO,然後對業務類的「映射」在較低層完成(您在這裏有很多方法要做到這一點,包括Dozer)。

對於一個更具體的答案,更多的細節或您的項目的例子會有所幫助。

+0

謝謝塞繆爾,我從來沒有對你的第二個建議。我一定會嘗試一下。 – gnclmorais