servlet之表單處理

表單頁面:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>Form</title>
  </head>
  <body>
    <form method="post" action="FormServlet">
      name:<input type="text" name="name"><br/>
      password:<input type="text" name="password"><br/>
      <input type="submit" value="submit">
    </form>
  </body>
</html>

處理表單數據的servlet:

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

/**
 * Created by leo on 17-7-14.
 */
/*
request:
getParameter():您可以調用 request.getParameter() 方法來獲取表單參數的值。
getParameterValues():如果參數出現一次以上,則調用該方法,並返回多個值,例如複選框。
getParameterNames():如果您想要得到當前請求中的所有參數的完整列表,則調用該方法。
 */
@WebServlet("/FormServlet")  ////servlet3.1,tomcat=8.5.15時,"/FormServlet"的斜線不能漏
public class FormServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");

        PrintWriter out = response.getWriter();

        String name = new String(request.getParameter("name").getBytes("ISO8859-1"), "UTF-8");
        String password = new String(request.getParameter("password").getBytes("ISO8859-1"), "UTF-8");
        String result = "<h1>name:" + name + ",password=" + password + "</h1>";
        out.println(result);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章