一个小玩意
项目结构

项目流程
01

一个简单的表单页面 index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单提交</title>
</head>
<body>
<form action="doPostServlet" method="post" name="myForm">
<table>
<tr>
<td>parm1</td>
<td><input name="parm1" type="text"></td>
</tr>
<tr>
<td>parm2</td>
<td><input name="parm2" type="text"></td>
</tr>
</table>
<input type="submit" value="mySubmit">
</form>
</body>
</html>
通过post方法提交name分别parm1、parm2的值至doPostServlet。
02

输入内容后点击提交(mySubmit),此时内容将提交至doPostServlet.java进行处理
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;
@WebServlet("/doPostServlet")
public class doPostServlet extends HttpServlet {
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("utf-8");
String parm1 = request.getParameter("parm1");
String parm2 = request.getParameter("parm2");
System.out.println(parm1);
System.out.println(parm2);
request.getRequestDispatcher("doPostServlet.jsp").forward(request, response);
}
}
重写doPost方法,对请求内容进行utf-8编码
再在控制台打印测试,之后转发给doPostServlet.jsp页面
03
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>接受doPostServlet数据</title>
</head>
<body>
<h3>接受doPostServlet的数据</h3>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
out.print(path);
out.print("<br>");
out.print(basePath);
out.print("<br>");
%>
parm1: <% out.print(request.getParameter("parm1"));%>
<br>
parm2: <% out.print(request.getParameter("parm2"));%>
</body>
</html>
打印path、basepath、parm1与parm2的值。
04

成功!
补充说明
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>doPostServlet</servlet-name>
<servlet-class>doPostServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>doPostServlet</servlet-name>
<url-pattern>/doPostServlet</url-pattern>
</servlet-mapping>
</web-app>
web.xml中需要添加Servlet与url的映射

浙公网安备 33010602011771号