JSP中Servlet获取表单数据示例(doGet()和doPost()共用接口)

仔细钻研下面两个代码绝对让你受益匪浅


1.JSP页(form表单):

<%--
    Document   : index
    Created on : 2009-10-9, 10:37:30
    Author     : lucifer
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
         <form method="post" action="NewServlet">
              用户名:
              <input type="text" name="username"><br>
              密码:
              <input type="password" name="password"><br>
              多选:
              <p>
                   <input type="checkbox" value="select1" name="check1">多选1
                   <input type="checkbox" value="select2" name="check2">多选2
                   <input type="checkbox" value="select3" name="check3">多选3
              </p>
              单选:
              <p>
                   <input type="radio" name="Radio" value="Radio1" checked>单选1
                   <input type="radio" name="Radio" value="Radio2">单选2
                   <input type="radio" name="Radio" value="Radio3">单选3
              </p>
              <p>
                   下拉选择:
                   <select name="ComboBox" size="1">
                        <option value="1">下拉选项1</option>
                        <option value="2">下拉选项2</option>
                        <option value="3">下拉选项3</option>
                   </select>
              </p>
              <p>
                   列表选择:
                   <select name="ListBox" size="3" multiple>
                        <option value="1">列表选择1</option>
                        <option value="2">列表选择2</option>
                        <option value="3">列表选择3</option>
                   </select>
              </p>
              <input type="submit" value="Ok">
         </form>
    </body>
</html>


2.Servlet(名字是NewServlet)


/*
    Document   : NewServlet
    Created on : 2009-10-9, 10:37:30
    Author     : lucifer
*/


import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;

public class NewServlet extends HttpServlet {

    protected void processRequest(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException {
         Vector rows;
         String requestdata = "";
        res.setContentType("text/html;charset=UTF-8");
        PrintWriter out = res.getWriter();
        try {

            out.println("<html>");
            out.println("<head>");
            out.println("<title>Servlet NewServlet</title>");
            out.println("</head>");
            out.println("<body>");
            out.println("<h1>Servlet NewServlet at " + req.getContextPath () + "</h1>");

            rows = getRequestParametersData(req);
            for(int i = 0;i < rows.size();i++){
                 Vector cols = (Vector)rows.elementAt(i);
                 for(int j = 0;j <cols.size();j++){
                      requestdata += cols.elementAt(j);
                 }
                 requestdata += "<br>";
            }
            out.println(requestdata);
            out.println("</body>");
            out.println("</html>");
        } finally {
            out.close();
        }
    }

    private Vector getRequestParametersData(HttpServletRequest req){
         Vector rows = new Vector();
         for(Enumeration e = req.getParameterNames();e.hasMoreElements();){
              String name = (String)e.nextElement();
              String[] values = req.getParameterValues(name);
              Vector cols = new Vector();
              cols.addElement(name);
              String value = "";
              for(int i = 0;i < values.length;i++){
                   value += "{" + values[i] + "}";
              }
              cols.addElement(value);
              rows.addElement(cols);
         }
         return rows;


    }

   

    //注意他们共用一个接口
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException {
        processRequest(req, res);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException {
        processRequest(req, res);
    }


    @Override
    public String getServletInfo() {
        return "~~~";
    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值