post请求能不能像get请求一样,在路径后面加参数?
参数的方法不推荐,涉及安全问题,最好不用。
实验:
1、Servlet
package com.wrox;
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;
@WebServlet(
name = "helloServlet",
urlPatterns = {"/greeting", "/salutation", "/wazzup"},
loadOnStartup = 1
)
public class HelloServlet extends HttpServlet {
private static final String DEFAULT_USER = "Guest";
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String user = request.getParameter("user");
String returnTo = request.getParameter("returnTo");
if (user == null)
user = HelloServlet.DEFAULT_USER;
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter writer = response.getWriter();
writer.append("<!DOCTYPE html>
")
.append("<html>
")
.append(" <head>
")
.append(" <title>Hello User Application</title>
")
.append(" </head>
")
.append(" <body>
")
.append(" Hello, ").append(user).append(" - ").append(returnTo).append("!<br/><br/>
")
.append(" <form action="greeting?returnTo=productId" method="POST">
")
.append(" Enter your name:<br/>
")
.append(" <input type="text" name="user"/><br/>
")
.append(" <input type="submit" value="Submit"/>
")
.append(" </form>
")
.append(" </body>
")
.append("</html>
");
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
2、页面Jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Hello, User Application Index File</title>
</head>
<body>
<a href="greeting">Go to greeting</a>.
</body>
</html>
3、结果
小记:
慢慢探索、深入,争取写出点有意义的东西。有疑问,就写个小栗子,搞一下就明白了。
