簡體   English   中英

移動應用程序+ Spring MVC - JSP?

[英]Mobile application + Spring MVC - JSP?

我有一個基於Spring MVC的Web應用程序,已經運行了。 我打算給移動用戶一個與服務器通信的應用程序,這樣他們就會發現更容易與之交互。 我有模型,視圖和控制器工作正常,但一切都是從網絡的角度設計的。

所以,我正在為移動應用程序構建一些新的控制器,問題就出現了:因為View的終極責任將成為有問題的移動應用程序,我應該在哪里將所有內容委托給應用程序,控制器(為每個響應准備一個JSON)? 或者我應該有一個啟用了一些JSON taglib的JSP,以便Controller將這些部分提供給JSP,然后我在JSP中構建JSON響應?

我不清楚這種情況下的MVC架構。

提前致謝。

控制器方法應該只返回obejcts(或對象集合),由於@ResponseBody注釋,它將被自動序列化為JSON:

@RequestMapping(value = "/api/users", 
                method = RequestMethod.GET, 
                produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public List<User> listUsers() {
    ...
}

當您所做的只是創建移動(或其他客戶端)將要使用的REST API時,視圖不會發揮作用。 財務主任負責為客戶准備適當的響應。

幸運的是,由於返回JSON是一種常見的場景,因此Spring MVC會將序列化處理成JSON(使用Jackson庫),因此您不必這樣做。

正如JB Nizet所示,您可以使用@ResponseBody批注告訴Spring MVC應該按原樣返回響應(由於@ResponseBody produces = MediaType.APPLICATION_JSON_VALUE而序列化為JSON),或者如果您使用的是Spring 4,則可以完全放棄@ResponseBody注釋和批注與控制器@RestController (這使得春節表現得好像@ResponeBody ,而不是被添加到每個方法映射) @Controller

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM