得到jsp頁面提交的參數很容易,但通過它可以將request中的參數和值變成一個map,以下是將得到的參數和值打印出來,形成的map結構:map(key,value[]),即:key是String型,value是String型數組。
例如:request中的參數t1=1&t1=2&t2=3
形成的map結構:
key=t1;value[0]=1,value[1]=2
key=t2;value[0]=3
如果直接用map.get("t1"),得到的將是:Ljava.lang.String; value只所以是數組形式,就是防止參數名有相同的情況。
Map map = request.getParameterMap();
java.util.Enumeration enum=this.getRequest().getParameterNames();
while(enum.hasMoreElements()){
String paramName=(String)enum.nextElement();
String[] values=request.getParameterValues(paramName);
for(int i=0;i<values.length;i++){
System.out.println("["+i+"] "+paramName+" "+values[i]);
}
}
假設傳遞的參數個數不固定且參數名沒有重複的,如何從後臺得到呢?
Map map = new HashMap();
//得到枚舉類型的參數名稱,參數名稱若有重複的只能得到第一個
Enumeration enum = this.getRequest().getParameterNames();
while (enum.hasMoreElements()) {
String paramName = (String) enum.nextElement();
String paramValue = this.getRequest().getParameter(paramName);
//形成鍵值對應的map
map.put(paramName, paramValue);
}