欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springMVC如何將controller中數(shù)據(jù)傳遞到j(luò)sp頁面

 更新時(shí)間:2017年07月05日 10:05:47   作者:水車  
這篇文章主要介紹了springMVC如何將controller中數(shù)據(jù)傳遞到j(luò)sp頁面,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

1> 將方法的返回值該為ModelAndView在返回時(shí),將數(shù)據(jù)存儲(chǔ)在ModelAndView對(duì)象中如:

newModelAndView("/WEBINF/jsp/showData.jsp","message",message)

其中第一個(gè)參數(shù)為url,第二個(gè)參數(shù)為要傳遞的數(shù)據(jù)的key,第三個(gè)參數(shù)為數(shù)據(jù)對(duì)象。

在這里要注意的是 數(shù)據(jù)是默認(rèn)被存放在request中的。

示例:

@RequestMapping(value="/mad/showData_1.do")
public ModelAndView showData_1(){
  String message = "這個(gè)是要傳遞的數(shù)據(jù)";
  /*其中第一個(gè)參數(shù)為url,第二個(gè)參數(shù)為要傳遞的數(shù)據(jù)的key,第三個(gè)參數(shù)為數(shù)據(jù)對(duì)象。在這里要注意的是:數(shù)據(jù)是默認(rèn)被存放在request中的。*/
  return new ModelAndView("/WEB-INF/jsp/showData.jsp","message",message);
}

前臺(tái)頁面獲取方式:

request:${requestScope.message}

2> 可以在類的前面添加注解

@SessionAttributes({“message”,”user”})

這個(gè)注解可以設(shè)置對(duì)應(yīng)的model中參數(shù)也會(huì)在session中存儲(chǔ)一份。該注解中的參數(shù)為一個(gè)集合,可以寫多個(gè),如上面的例子,其中message和user都是存儲(chǔ)的數(shù)據(jù)的key.

示例程序:

復(fù)制代碼 代碼如下:

@SessionAttributes({"message","user"})   //modelAndView中的對(duì)應(yīng)的數(shù)據(jù)也會(huì)在session中存儲(chǔ)一份

頁面獲?。?br />

session:${sessionScope.message}<br/>

3 > 數(shù)據(jù)modelAndView返回一個(gè)集合

該處理方式和上面的處理方式一直,因?yàn)閙odelAndView接受的數(shù)據(jù)類型是Object的,集合也是一樣的處理方式

示例:

//使用modelAndView對(duì)象將數(shù)據(jù)傳遞到前臺(tái)。
//傳遞多個(gè)參數(shù)(不同類型的)
  @RequestMapping(value="/mad/showData_2.do")
  public ModelAndView showData_2(){
   System.out.println("showData_2");
   String message = "這個(gè)是要傳遞的數(shù)據(jù)";
   User user = new User("張三", 12, new Date());
   List<User> us= new ArrayList<User>();
   us.add(new User("張三", 12, new Date()));
   us.add(new User("張四", 13, new Date()));
   us.add(new User("張五", 14, new Date()));
   ModelAndView mad = new ModelAndView("/WEB-INF/jsp/showData.jsp");
   //將數(shù)據(jù)存入modelMap
   mad.addObject("message", message);
   mad.addObject(user);//默認(rèn)為類名的首字母小寫
   mad.addObject("users", us);
   return mad;
 }

前臺(tái)頁面獲取方式:

request:${requestScope.message}<br/>
<c:forEach items="${requestScope.users }"var="u">
   ${u.name }-${u.age }-${u.birth }<br/>
  </c:forEach>

4、使用modelAndView傳遞多個(gè)參數(shù)。

可以通過ModelAndView的mad.addObject(“message”,message);方法設(shè)置參數(shù)。

該方法中第一個(gè)參數(shù)為數(shù)據(jù)的key,第二個(gè)參數(shù)為數(shù)據(jù)對(duì)象。

也可以使用mad.addObject(user);方法

該方法中數(shù)據(jù)的參數(shù)為數(shù)據(jù)對(duì)象,數(shù)據(jù)的key為該對(duì)象的類的類名 (其中首字母小寫)。

5、使用ModelMap傳遞多個(gè)數(shù)據(jù)到j(luò)sp中。

在方法的參數(shù)列表中添加形參 ModelMap map,spring 會(huì)自動(dòng)創(chuàng)建ModelMap對(duì)象。

然后調(diào)用map的put(key,value)或者addAttribute(key,value)將數(shù)據(jù)放入map中,spring會(huì)自動(dòng)將數(shù)據(jù)存入request。

示例:

//使用modelMap對(duì)象將數(shù)據(jù)傳遞到前臺(tái)。
  //傳遞多個(gè)參數(shù)(不同類型的)
  @RequestMapping(value="/mad/showData_3.do")
  public String showData_3(ModelMap map){
   System.out.println("showData_3");
   String message = "這個(gè)是要傳遞的數(shù)據(jù)";
   User user = new User("張三", 12, new Date());
   List<User> us= new ArrayList<User>();
   us.add(new User("張三", 12, new Date()));
   us.add(new User("張四", 13, new Date()));
   us.add(new User("張五", 14, new Date()));
   //將數(shù)據(jù)存入modelMap
   map.put("message", message);
   map.addAttribute("user", user);
   map.put("users", us);
   return"/WEB-INF/jsp/showData.jsp";
  }

頁面調(diào)用:

request:${requestScope.message}<br/>
  session:${sessionScope.message }<br/>
  application:${applicationScope.message}<br/>
  <hr/>
  <h1>ModelMap中的數(shù)據(jù)</h1>
  ${requestScope.message}<br/>
  ${requestScope.user.name}<br/>
  <p>列表</p>
  <c:forEach items="${requestScope.users}" var="u">
   ${u.name }-${u.age }-${u.birth }<br/>
  </c:forEach>

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java實(shí)現(xiàn)在線編輯預(yù)覽office文檔詳解

    Java實(shí)現(xiàn)在線編輯預(yù)覽office文檔詳解

    PageOffice是一款在線的office編輯軟件,幫助Web應(yīng)用系統(tǒng)或Web網(wǎng)站實(shí)現(xiàn)用戶在線編輯Word、Excel、PowerPoint文檔,下面我們就來看看如何使用Java實(shí)現(xiàn)在線預(yù)覽office吧
    2024-01-01
  • Spring實(shí)戰(zhàn)之協(xié)調(diào)作用域不同步的Bean操作示例

    Spring實(shí)戰(zhàn)之協(xié)調(diào)作用域不同步的Bean操作示例

    這篇文章主要介紹了Spring實(shí)戰(zhàn)之協(xié)調(diào)作用域不同步的Bean操作,結(jié)合實(shí)例形式分析了Spring協(xié)調(diào)作用域不同步的Bean相關(guān)配置及使用技巧,需要的朋友可以參考下
    2019-11-11
  • mybatis-generator生成多次重復(fù)代碼問題以及解決

    mybatis-generator生成多次重復(fù)代碼問題以及解決

    在使用MySQL數(shù)據(jù)庫時(shí),如果多個(gè)數(shù)據(jù)庫中存在相同表名,即使在URL中配置了數(shù)據(jù)庫名,也可能導(dǎo)致數(shù)據(jù)互相影響,解決這一問題的方法是在mapper-generator-config.xml文件中添加catalog屬性,明確指定逆向工程代碼所涉及表的數(shù)據(jù)庫名
    2024-10-10
  • 深入解析Spring?Boot?的SPI機(jī)制詳情

    深入解析Spring?Boot?的SPI機(jī)制詳情

    這篇文章主要介紹了深入解析Spring?Boot的SPI機(jī)制詳情,SPI是JDK內(nèi)置的一種服務(wù)提供發(fā)現(xiàn)機(jī)制,可以用來啟用框架擴(kuò)展和替換組件,主要用于框架中開發(fā),更多相關(guān)介紹,感興趣的小伙伴可以參考一下下面文章內(nèi)容
    2022-08-08
  • Java從控制臺(tái)接受輸入字符的簡單方法

    Java從控制臺(tái)接受輸入字符的簡單方法

    這篇文章主要介紹了Java從控制臺(tái)接受輸入字符的簡單方法,需要的朋友可以參考下
    2014-02-02
  • java實(shí)現(xiàn)文件上傳下載

    java實(shí)現(xiàn)文件上傳下載

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)文件上傳下載功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • IDEA中配置多個(gè)版本的JDK的實(shí)現(xiàn)示例

    IDEA中配置多個(gè)版本的JDK的實(shí)現(xiàn)示例

    IDEA可以配置多個(gè)JDK,根據(jù)需要使用不同版本的,本文就來介紹一下IDEA中配置多個(gè)版本的JDK的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • Spring?Boot多數(shù)據(jù)源事務(wù)@DSTransactional的使用詳解

    Spring?Boot多數(shù)據(jù)源事務(wù)@DSTransactional的使用詳解

    本文主要介紹了Spring?Boot多數(shù)據(jù)源事務(wù)@DSTransactional的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Java多線程中常見的鎖策略詳解

    Java多線程中常見的鎖策略詳解

    這篇文章主要介紹了Java多線程中常見的鎖策略詳解,在Java多線程中鎖(synchronized)也會(huì)根據(jù)鎖的競爭程度來升級(jí)為相關(guān)“高等級(jí)”鎖,本文為了更好的理解?synchronized?加鎖機(jī)制,對(duì)其做出了詳細(xì)解釋,需要的朋友可以參考下
    2023-07-07
  • java實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證碼

    java實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03

最新評(píng)論