学科分类
目录
Java Web

param和paramValues对象

在JSP页面中,经常需要获取客户端传递的请求参数,为此,EL表达式提供了param和paramValues两个隐式对象,这两个隐式对象专门用于获取客户端访问JSP页面时传递的请求参数。接下来针对这两个对象进行讲解,具体如下:

1、param对象

param对象用于获取请求参数的某个值,它是Map类型,与request.getParameter()方法相同,在使用EL获取参数时,如果参数不存在,返回的是空字符串,而不是null。param对象的语法格式比较简单,具体示例如下:

${param.num}

2、paramValues对象

如果一个请求参数有多个值,可以使用paramValues对象来获取请求参数的所有值,该对象用于返回请求参数所有值组成的数组,如果要获取某个请求参数的第一个值,可以使用如下代码:

${paramValues.nums[0]}

为了让初学者更好的学习这两个隐式对象,接下来通过一个案例来演示param和paramValues隐式对象如何获取请求参数的值,如例1所示。

例1 param.jsp

 1  <%@ page language="java" contentType="text/html; charset=utf-8"

 2    pageEncoding="utf-8"%>

 3  <html>

 4  <head></head>

 5  <body>

 6  <body style="text-align: center;">

 7    <form action="${pageContext.request.contextPath}/param.jsp">

 8      num1:<input type="text" name="num1"><br> 

 9      num2:<input type="text" name="num"><br> 

 10     num3:<input type="text" name="num"><br> 

 11     <input type="submit" value="提交" />&nbsp;&nbsp;

 12     <input type="submit" value="重置" /><p><hr>

 13     num1:${param.num1}<br>

 14     num2:${paramValues.num[0]}<br>

 15     num3:${paramValues.num[1]}<br>

 16   </form>

 17 </body>

 18 </html>

打开IE浏览器,在地址栏中输入http://localhost:8080/chapter07/param.jsp访问param.jsp页面,此时,浏览器窗口中会显示一个表单,在这个表单输入三个数字,分别为10、20、30,然后点击提交按钮,浏览器窗口中显示的结果如图1所示。

图1 param.jsp

从图1可以看出,输入的三个数字全部都在浏览器中显示了,这是因为在例程7-7中使用param对象获取了请求参数num1的值为10,使用paramValues对象获取了同一个请求参数num的两个值,分别为20和30。需要注意的是,如果一个请求参数有多个值,那么在使用param获取请求参数时,则返回请求参数的第一个值。

点击此处
隐藏目录