Servlet 读取表单数据

来源:互联网 发布:关于网络防诈骗的知识 编辑:程序博客网 时间:2024/06/05 05:21

HttpServletResponse里有三个方法:

req.getParameter();
req.getParameterNames();
req.getParameterValues();

其中getParamenter() 和 getParameterValues() 分别为获取一个name 对应的value和一个name对应的一组value
request.getParameterNames()方法是将发送请求页面中form表单里所有具有name属性的表单对象获取(包括button).返回一个Enumeration类型的枚举.通过Enumeration的hasMoreElements()方法遍历.再由nextElement()方法获得枚举的值.此时的值是form表单中所有控件的name属性的值.最后通过request.getParameter()方法获取表单控件的value值.

前台表单代码:

<form action="Test" method="POST"><input type="text" name="name"/>爱好:<input type="checkbox" name="hobby" value="Math" checked="checked" /> 数学<input type="checkbox" name="hobby" value="English" checked="checked" /> 英语<input type="checkbox" name="hobby" value="Political" checked="checked" /> 政治<input type="submit" value="选择学科" /></form></body>

doget中的代码:

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {        resp.setContentType("text/html; charset=utf-8");        PrintWriter out = resp.getWriter();        Enumeration<String> it = req.getParameterNames();        while (it.hasMoreElements()) {            String paramName = (String) it.nextElement();            String[] paramValues = req.getParameterValues(paramName);            for (String s : paramValues) {                System.out.print(s + " ");            }            System.out.println();        }    }