内容:
设计一个Servlet接收表单,寻找表单传来的所有变量名字,并把它们放入表格中,没有值或有多个值的变量都突出显示。设计思路:首先,程序通过HttpServletRequest的getParameterNames()方法得到表单中所有的变量名字. getParameterNames()方法返回的是一- 个枚举集合( Enumeration)。接下来,循环遍历这个Enumeration,通过hasMoreElements()方法确定何时结束循环,利用nextElement()方法得到Enumeration中的各个项。由于nextElement方法返回的是一个Object,要把它转换成字符串,再调用getParameterValues()方法得到字符串数组,如果这个数组只有一个元素且为空字符串,说明这个表单变量没有值,Servlet以斜体形式输出“No Value";如果数组元素个数大于1,说明这个表单变量有多个值,以列表形式输出这些值;其他情况下Servlet直接把变量值放人表格。
实验步骤:
1.在src下创建Servlet文件(ShowParameterServlet.java);
2.在web.xml中配置Servlet;
3.运行程序查看效果。
代码结构
web.xml 代码如下:
getallpr.jsp 代码如下:
<%-- Created by IntelliJ IDEA. User: GAVT Date: 2021/10/28 Time: 上午8:14 --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %>My JSP 'getallpr.jsp' starting page <% request.setCharacterEncoding("utf-8") ; %> <% java.util.Enumeration allPara= request.getParameterNames(); while(allPara.hasMoreElements()){ Object pname=allPara.nextElement(); //取得各个元素的name值 String[] rs; //通过元素的name值取得value rs = request.getParameterValues((String) pname); int size=java.lang.reflect.Array.getLength(rs); %> <%=pname %>元素的值为: <% for (int i=0;i"); %> No Value
<% } else { out.println(rs[i]+"
"); } } %> <% } %>
Ser2.1 .html 代码如下:
实验2.1 GAVT



