程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> springmvc學習筆記(13)-springmvc注解開發之集合類型參數綁定

springmvc學習筆記(13)-springmvc注解開發之集合類型參數綁定

編輯:JAVA綜合教程

springmvc學習筆記(13)-springmvc注解開發之集合類型參數綁定


springmvc學習筆記(13)-springmvc注解開發之集合類型參數綁定


本文主要介紹注解開發的集合類型參數綁定,包括數組綁定,list綁定以及map綁定

數組綁定

需求

商品批量刪除,用戶在頁面選擇多個商品,批量刪除。

表現層實現

關鍵:將頁面選擇(多選)的商品id,傳到controller方法的形參,方法形參使用數組接收頁面請求的多個商品id。

controller方法定義:
// 批量刪除 商品信息
@RequestMapping("/deleteItems")
public String deleteItems(Integer[] items_id) throws Exception
頁面定義:


    
    ${item.name }
    ${item.price }
    
    ${item.detail }

    修改


list綁定

需求

通常在需要批量提交數據時,將提交的數據綁定到list中,比如:成績錄入(錄入多門課成績,批量提交),

本例子需求:批量商品修改,在頁面輸入多個商品信息,將多個商品信息提交到controller方法中。

表現層實現

controller方法定義:
1、進入批量商品修改頁面(頁面樣式參考商品列表實現) 2、批量修改商品提交

使用List接收頁面提交的批量數據,通過包裝pojo接收,在包裝pojo中定義list屬性

public class ItemsQueryVo {

    //商品信息
    private Items items;

    //為了系統 可擴展性,對原始生成的po進行擴展
    private ItemsCustom itemsCustom;

    //批量商品信息
    private List itemsList;
// 批量修改商品提交
// 通過ItemsQueryVo接收批量提交的商品信息,將商品信息存儲到itemsQueryVo中itemsList屬性中。
@RequestMapping("/editItemsAllSubmit")
public String editItemsAllSubmit(ItemsQueryVo itemsQueryVo) throws Exception {

    return "success";
}
頁面定義:

    

        
        
        

    

name的格式:

對應包裝pojo中的list類型屬性名[下標(從0開始)].包裝pojo中List類型的屬性中pojo的屬性名

例子:

"name="itemsList[${status.index }].price"

可以和包裝類型的參數綁定歸納對比一下,其實就是在包裝類的pojo基礎上多了個下標。只不過包裝類參數綁定時,要和包裝pojo中的pojo類性的屬性名一致,而list參數綁定時,要和包裝pojo中的list類型的屬性名一致。

map綁定

也通過在包裝pojo中定義map類型屬性。

在包裝類中定義Map對象,並添加get/set方法,action使用包裝對象接收。

包裝類中定義Map對象如下:
Public class QueryVo {
private Map itemInfo = new HashMap();
  //get/set方法..
}
頁面定義如下:

學生信息:

姓名:
年齡:
.. .. ..

Contrller方法定義如下:
public String useraddsubmit(Model model,QueryVo queryVo)throws Exception{
System.out.println(queryVo.getStudentinfo());
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved