getParameter和getParameterValues的区别及用法总结

zishuchen 2003-04-21 12:45:14
得到form表单传递的值和名称:
方法一 (getParameter)
<%
Enumeration enum = request.getParameterNames();
while(enum.hasMoreElements()){
String paraName = (String) enum.nextElement();
String paraValue = (String) request.getParameter(paraName);
%>
paraName: <%=paraName%>___________paraValue: <%=paraValue%><br>
<%
}
%>

方法二(getParameterValues)<hr>

<%
Enumeration paramNames = request.getParameterNames();
while(paramNames.hasMoreElements()) {
String paramName = (String)paramNames.nextElement();
out.println("<br>" + paramName + "=");
String[] paramValues = request.getParameterValues(paramName);

if (paramValues.length == 1) {
String paramValue = paramValues[0];
if (paramValue.length() == 0)
out.print("</I>No Value</I>");
else
out.print(paramValue);
}
else {
out.println("<UL>");
for(int i=0; i<paramValues.length; i++){
out.println("<LI>" + paramValues[i]);
}
}
//out.println("</UL>");

}
%>
...全文
629 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
u25 2003-04-27
  • 打赏
  • 举报
回复
我最近作的程序中就用到了上面的方法,request.getParameterValues(),把取出的值放在数组中.
shaopin 2003-04-22
  • 打赏
  • 举报
回复
确实用枚举或数组的方法可以提高很效率。
13060939425 2003-04-22
  • 打赏
  • 举报
回复
//******************
//在A.JSP中:
//******************
<form name="form1" method="post" action="">
<p>
<input type="checkbox" name="A" value="1">
FIRST
<input type="checkbox" name="B" value="2">
SECOND
<input type="checkbox" name="C" value="3">
THIRD
<input type="checkbox" name="D" value="4">
FORTH
<input type="checkbox" name="D" value="5">
FIFTH </p>
</form>

//请注意,第四个和第五个的name是一样的



//******************
//在B.JSP中:
//******************
<%
Enumeration paramNames = request.getParameterNames();
while(paramNames.hasMoreElements()) {
String paramName = (String)paramNames.nextElement();
out.println("<br/>" + paramName + "=");
String[] paramValues = request.getParameterValues(paramName); //

// 第一次循环时,paramName的值是: paramValues的值是: ?
// 第一次循环时,paramName的值是: paramValues的值是: ?
// 第一次循环时,paramName的值是: paramValues的值是: ?
// 第一次循环时,paramName的值是: paramValues的值是: ?
// 第一次循环时,paramName的值是: paramValues的值是: ?

if (paramValues.length == 1) {
String paramValue = paramValues[0];
if (paramValue.length() == 0)
out.print("</I>No Value</I>");
else
out.print(paramValue);
}
else {
out.println("<UL>");
for(int i=0; i<paramValues.length; i++){
out.println("<LI>" + paramValues[i]);
}
}
//out.println("</UL>");

}
%>


jwywxx 2003-04-21
  • 打赏
  • 举报
回复
up.不过在实际的应用中好象不用这么复杂。
zishuchen 2003-04-21
  • 打赏
  • 举报
回复
本篇资料由本人整理,请大家参阅,如果有问题,请于我联系。QQ:52399178
x_coolboy 2003-04-21
  • 打赏
  • 举报
回复
我的感觉是getParameter和getParameterValues主要是在读取数组时有区别
getParameter把数组中所有的element都取出来,有可能存在NULL
getParameterValues把数组中所有值不为NULL的element取出来
在实际开发过程中,遇到取数组值时,我一般都会使用getParameterValues

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧