2012-04-02 23 views
1

我有一個使用Apache CXF的RESTful Web服務原型。我正在使用json進行客戶端和服務器之間的數據交換。目前有幾個pojos映射到不同場景需要的幾個請求和響應JSON。最佳實踐:使用Apache CXF進行RESTful Web服務數據交換的JSON

我擔心的是,如果未來場景數量增加,我們將不得不爲額外的pojos請求和響應。還有其他的方式嗎?

回答

1

所有這些pojos具有相同類型的行爲?如果是的話我們可以創建一個接口,所有的pojos都應該實現這個接口。我們可以基於pojo類名在運行時初始化對象。

您可以使用此代碼進行運行時初始化。 -

INTERFACE_CLASS_NAME interface_identifier=(INTERFACE_CLASS_NAME)Class.forName(POJO_CLASS_NAME_WITH_PACKAGE).newInstance(); 

您可以使用像Gson這樣的第三方庫將pojo轉換爲json,反之亦然。

+0

當你說他們的參數相同的行爲 Sikorski 2012-04-03 14:51:27

+0

行爲意味着它們具有相同的方法名稱和實例變量(如Interface中定義的),但這些方法對於不同的pojos有不同的實現。 我想你想要動態地將所有pojo映射到json(隨着它們將來增加)。 因此,要引用任何pojo的對象,我們需要一些變量引用,所以通過使用接口,我們可以指定引用任何動態pojo對象的變量引用。 – 2012-04-03 16:28:00