您的位置:首页 > 产品设计 > UI/UE

request.getParameterValues与request.getParameter的区别

2017-06-10 17:23 741 查看
一、简单的对比

request.getParameter用的比较多,相对熟悉

 

 

request.getParameterValues(String   name)是获得如checkbox类(名字相同,但值有多个)的数据。   接收数组变量,如checkobx类型    

request.getParameter(String   name)是获得相应名的数据,如果有重复的名,则返回第一个的值. 接收一般变量,如text类型

 

例:

1. 三个名字相同的text标签

<input type="text" name="test" value="1" />

<input type="text" name="test" value="2" />

<input type="text" name="test" value="3" />

 

request.getParameterValues("test")   ----------------- [1, 2, 3]

request.getParameter("test")             ------------------ 1

 

${paramValues.test}

${param.test}

 

2. checkbox

 <input type="checkbox" name="habit" value="read">看书

 <input type="checkbox" name="habit" value="movie">电影

 <input type="checkbox" name="habit" value="game">游戏

request.getParameterValues("habit")

 

 

二、与此相关的话题------隐含对象

 

1. JSP隐含对象(Implicit Object)

 

     所谓隐含对象,是指当编写jsp网页时,不必做任何声明就可以直接使用的对象。 JSP2.0定义了九个隐含对象

 

request response pageContext session application out conifg page exception

 

这里只提一下request 和 response 两个对象

       request 对象表示客户端请求的内容,比如我们从request中取得了用户输入的内容,实现了javax.servlet.http.HttpServletRequest接口

      response对象表示响应客户端的结果。

上面我们使用了request的两个方法getParameter 和 getParameterValues,其实request还有其他几个比较重要的方法,这里只涉及几个获取请求参数的方法

String getParameter(String name)                     取得name的参数值

String[] getParameterValues(String name)        取得所有name的参数值

Enumeration getParameterNames()                  取得所有的参数名称

Map<String, String[]> getParameterMap()        取得request的所有参数的一个映射

2. EL隐含对象

 

EL即Experssion Language,自JSP2.0后正式成为JSP的标准规范之一,支持Servlet2.4/JSP2.0的Container也就相应的支持EL语法。

一个常见的形式如,<c:out value="${ 3 + 7 * 4}" />

EL的隐藏对象有11个 PageContext PageScope RequestScope sessionScope applicationScope

param paramValues header headerValues cookie initParam

其中param 和 paramValues即对相应ServletRequest.getParameter(String name)和ServletRequest.getParameterValues(String name)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: