首頁 > Java > java教程 > 詳解spring mvc支援的七種返回方式

詳解spring mvc支援的七種返回方式

Y2J
發布: 2017-05-16 09:45:05
原創
2098 人瀏覽過

本篇文章主要介紹了SpringMVC Controller 回傳值的可選類型詳解,spring mvc 支援如下的回傳方式:ModelAndView, Model, ModelMap, Map,View, String, void,有興趣的可以了解

spring mvc 支援如下的回傳方式:ModelAndView, Model, ModelMap, Map,View, String, void。

ModelAndView

@RequestMapping("/hello")
  public ModelAndView helloWorld() { 
    String message = "Hello World, Spring 3.x!";
    return new ModelAndView("hello", "message", message);
  }
登入後複製

透過ModelAndView建構方法可以指定傳回的頁面名稱,也可以透過setViewName()方法跳到指定的頁面

Map

@RequestMapping("/demo2/show") 
  public Map<String, String> getMap() { 
    Map<String, String> map = new HashMap<String, String>(); 
    map.put("key1", "value-1"); 
    map.put("key2", "value-2"); 
    return map; 
  }
登入後複製

在jsp頁面中可直接透過${key1}得到到值, map.put()相當於request.setAttribute方法。

View

可以回傳pdf excel等,暫時沒詳細了解。

String

指定傳回的檢視頁面名稱,結合設定的回傳位址路徑加上頁面名稱後綴即可存取。

注意:如果方法宣告了註解@ResponseBody ,則會直接將傳回值輸出到頁面。

@RequestMapping(value="/showdog")
  public String hello1(){
    return "hello";
  }
登入後複製
@RequestMapping(value="/print")
  @ResponseBody
  public String print(){
    String message = "Hello World, Spring MVC!";
    return message;
  }
登入後複製

傳回json的範例(使用Jackson):

@RequestMapping("/load1")
  @ResponseBody
  public String load1(@RequestParam String name,@RequestParam String password) throws IOException{
    System.out.println(name+" : "+password); 
    //return name+" : "+password;
    MyDog dog=new MyDog();
    dog.setName("小哈");dog.setAge("1岁");dog.setColor("深灰");
    ObjectMapper objectMapper = new ObjectMapper();
    String jsonString=objectMapper.writeValueAsString(dog);
    System.out.println(jsonString);
    return jsonString;
  }
登入後複製

void

如果傳回值為空,則回應的視圖頁面對應為存取位址

@RequestMapping("/index")
  public void index() {
    return;
  }
登入後複製

對應的邏輯視圖名為"index"

#小結:

1.使用String作為請求處理方法的回傳值類型是比較通用的方法,這樣傳回的邏輯視圖名稱不會和請求URL 綁定,具有很大的彈性,而模型資料又可以透過ModelMap 控制。

2.使用void,map,Model 時,傳回對應的邏輯視圖名稱真實url為:prefix前綴+視圖名稱 +suffix後綴組成。

3.使用String,ModelAndView傳回視圖名稱可以不受要求的url綁定,ModelAndView可以設定傳回的視圖名稱。

【相關推薦】

1. 特別推薦#:「php程式設計師工具箱」V0.1版本下載

2. Java免費影片教學

3. JAVA教學手冊

#

以上是詳解spring mvc支援的七種返回方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板