2013-08-06 37 views
0

使用Spring和Jackson庫來完成此操作的最佳方式是什麼?Restful - 將Hibernate實體轉換爲JSON

例如:

Class A{ 
    Long id; 
    String name; 
    List<B> listOfB; 
} 

Class B{ 
Long id; 
String description; 
List<C> listOfC; 
} 

Class C{ 
    Long id; 
} 

當我做一個GET調用A,它應該給我A和和B的每一個A.但是B的列表的信息不應包括C的

名單

當我做一個GET調用B,它應該給我C'S爲B的信息,並列出每個 B.

我知道我可以手動遍歷並創建一個傑克遜的Json節點對象,但有一個框架,可以幫助這個過程?我似乎MVC 4使用ViewModel系統來做到這一點。 Java世界中通常用於RESTful服務的是什麼?

回答

0

一個簡單的方法是將包括jackson-mapper-asl依賴於你的類路徑,並宣佈你的Spring MVC處理方法是這樣的:

@RequestMapping(...) 
@ResponseBody 
public A getA(..) { 
    A a = // fetch A object from persistence layer 
    return a; 
} 

@ResponseBody註釋的存在將導致對象被翻譯成JSON

+0

我已經使用了這個簡單的對象,但是當列表中有列表並且涉及到延遲加載時,這不起作用。我看着傑克遜Hibernate實用程序,但我並不喜歡它。 – user724535