7.3.4 获得请求参数集合的内置对象
优质
小牛编辑
128浏览
2023-12-01
EL表达式中的param和paramValues对象都可以获得请求参数集合,它们的区别是param对象返回的Map对象的value是String类型,而paramValues对象返回的Map对象的value是String[]类型。因此,paramValues对象可以用于获得可能有重名的请求参数集合。而param对象用于获得没有重名的请求参数集合。如要获得请求参数name的值,可以使用如下的代码:
${param.name}
${paramValues.name[0]}
如果使用paramValues对象返回Map对象时,由于value是一个String数组,即使没有重名的请求参数,value的类型仍然为只有一个元素的String数组,因此,必须使用name[0]来输出name请求参数的值。
如果不为param和paramValues对象指定请求参数,则输出所有的请求参数,代码如下:
<!-- param.jsp -->
${param}<hr>
${paramValues}
在浏览器地址栏中输入如下的URL:
http://localhost:8080/demo/chapter7/param.jsp?name=bill&age=22
浏览器显示的效果如图7.4所示。
图7.4 使用param和paramValues对象输出所有的请求参数