读取所有参数(Servlet)

package coreservlets;

import java.io.*;
import java.uitl.*;

import javax.servlet.*;
import javax.servlet.http.*;

public class ShowParameters extends HttpServlet
 {
   public void doGet(HttpServletRequest request,HttpServletResponse response)
   throws ServletException,IOException
   {
     response.setContentType("text/html");
     PrintWriter out=response.getWriter();
     String title="showParameters";
     out.println(ServletUtilities.headWithTitle(title)+
                        "<BODY bgcolor=/"#FDF5E6/">/n"+
                        "<h1>"+title+"</h1>/n"+
                        "</body>"+
                        "<Table border=1 align=center>/n"+
                        "<tr bgcolor=/"#FFAD00/">/n"+
                        "<th>Parameters Name<TH>Parameter Value(s)");
     Enumeration paramNames=request.getParameterNames();
     while(paramNames.hasMoreElement())
     {
       String paramName=(String)paramNames.nextElement();
       out.println("<tr><Td>"+paramName+"/n<Td>");
       String[] paramValues=request.getParamValues(paramName);
       if(paramValues.length==1)
       {
         String paramValue=paramValues[0];
         if(paramValue.length()==0)
           out.println("<I>No Value</I>");
         else
           out.println(paramValue);
       }
       else
       {
         out.println("<UL>");
         for(int i=0;i<paramValues.length;i++)
         {
           out.println("<LI>"+paramValues[i]);
         }
         out.println("</UL>");
       }
     }
     out.println("</talbe>/n</body></html>);                  
   }
   public void doPost(HttpServletRequest request,HttpServletResponse response)
   throws ServletException,IOException
   {
     doGet(request,response);
   }
 }
      首先这个servlet用HttpServletRequest的getParameterNames方法检查出所有参数名。
 getParameterNames方法返回一个Enumeration,其中包含参数名,次序未定。接下来servlet
 用标准的方式依次迭代Enumeration,使用hasMoreElements确定什么时候停止,使用
 nextElement获取每个参数名。由于nextElement返回的是Object,故而必须转换为String,
 并传递给getParameterValues,得到一个字符数组。如果这个数组种只有一项,且为空
 字符串,那么该参数没值,该servlet表示为No Value。如果该数组中含有多项,那么
 servlet就把所有的显示出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值