日期:2014-05-16  浏览次数:20512 次

JSP中接收所有参数的方法——request.getParameterNames()
在JSP中,如果提交的参数太多,一个个的接收太麻烦。
可以使用request.ParameterName()方法接收所有的参数来解决这个问题。
方法:public Enumeration getParameterNames()
Enumeration:枚举类型

实例:
04.html:提交参数页面
程序代码

<html>
  <head>
    <title>04.html</title>
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
  </head>
  <body>
    <form action="04.jsp" method="post">
        姓名:<input type="text" name="uname" />
        <p>
        擅长技术:
        <!-- 约定:数组参数的参数名前面加上"**" -->
        <input type="checkbox" name="**tech" value="J2EE" />J2EE
        <input type="checkbox" name="**tech" value=".NET" />.NET
        <input type="checkbox" name="**tech" value="ASP" />ASP
        <input type="checkbox" name="**tech" value="PHP" />PHP
        <p>
        <input type="submit" value="提交" />
    </form>
  </body>
</html>


04.jsp:接收参数页面
程序代码

<%@page contentType="text/html;charset=GB2312" %>
<%@page import="java.util.*" %>
<html>
  <head>
    <title>04.jsp</title>
    <!--
    <link rel="stylesheet" type="text/css" href="styles.css">
    -->
  </head>
 
  <body>
      <%
          request.setCharacterEncoding("GB2312");
          Enumeration enu=request.getParameterNames();
          while(enu.hasMoreElements())
          {
              String name=(String)enu.nextElement();
              if(name.startsWith("**"))
              {
              //如果是数组参数,则逐个打印
      %>
              <h1><%=name %>:
              <%
                  String canshu[]=request.getParameterValues(name);
                  int i;
                  for(i=0;i<canshu.length;i++)
                  {
              %>
                      <%=canshu[i] %>
              <%