熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java開源技術 >> 正文

Spring MVC學習之處理方法返回值的可選類型

2022-06-13   來源: Java開源技術 

  spring mvc處理方法支持如下的返回方式ModelAndView Model ModelMap MapView String void下面將對具體的一一進行說明

  ModelAndView

  Java代碼

  @RequestMapping(/show)

  public ModelAndView show(HttpServletRequest request

  HttpServletResponse response) throws Exception {

  ModelAndView mav = new ModelAndView(/demo/show);

  mavaddObject(account account );

  return mav;

  }

  通過ModelAndView構造方法可以指定返回的頁面名稱也可以通過setViewName()方法跳轉到指定的頁面

  使用addObject()設置需要返回的值addObject()有幾個不同參數的方法可以默認和指定返回對象的名字

  調用addObject()方法將值設置到一個名為ModelMap的類屬性ModelMap是LinkedHashMap的子類

  具體請看類

  Model 是一個接口 其實現類為ExtendedModelMap繼承了ModelMap類

  Map

  Java代碼

  @RequestMapping(/demo/show)

  public Map getMap() {

  Map map = new HashMap();

  mapput(key value);

  mapput(key value);

  return map;

  }

  在jsp頁面中可直通過${key}獲得到值 mapput()相當於requestsetAttribute方法

  寫例子時發現key值包括 時會有問題

  View 可以返回pdf excel等暫時沒詳細了解

  String 指定返回的視圖頁面名稱結合設置的返回地址路徑加上頁面名稱後綴即可訪問到

  注意如果方法聲明了注解@ResponseBody 則會直接將返回值輸出到頁面

  例如

  Java代碼

  @RequestMapping(value = /something method = RequestMethodGET)

  @ResponseBody

  public String helloWorld() {

  return Hello World;

  }

  上面的結果會將文本Hello World 直接寫到http響應流

  Java代碼

  @RequestMapping(/welcome)

  public String welcomeHandler() {

  return center;

  }

  對應的邏輯視圖名為centerURL= prefix前綴+視圖名稱 +suffix後綴組成

  void 如果返回值為空則響應的視圖頁面對應為訪問地址

  Java代碼

  @RequestMapping(/welcome)

  public void welcomeHandler() {}

  此例對應的邏輯視圖名為welcome

  小結

  使用 String 作為請求處理方法的返回值類型是比較通用的方法這樣返回的邏輯視圖名不會和請求 URL 綁定具有很大的靈活性而模型數據又可以通過 ModelMap 控制

  使用voidmapModel 時返回對應的邏輯視圖名稱真實url為prefix前綴+視圖名稱 +suffix後綴組成

  使用StringModelAndView返回視圖名稱可以不受請求的url綁定ModelAndView可以設置返回的視圖名稱


From:http://tw.wingwit.com/Article/program/Java/ky/201311/28888.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.