目錄結構
demo\day20\src\com\demo\service\Dome1.javademo\day20\src\com\demo\service\Dome2.javademo\day20\src\com\demo\service\Dome3.javademo\day20\src\com\demo\service\Dome4.javademo\day20\web\WEB-INF\lib\javax.servlet.jardemo\day20\web\index.jspdemo\day20\web\logan1.htmldemo\day20\web\login.html
訪問 http://localhost:8080/login.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><form action="/Dome1" method="post">用戶名:<input type="text" name="username"> <br>密碼:<input type="password" name="password"><br><input type="submit" value="登錄"></form>
</body>
</html>
或者訪問 http://localhost:8080/logan1.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<form ACTION="/Dome1" method="post"><a href="/Dome1">超鏈接</a>
</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;
@WebServlet("/Dome1")
public class Dome1 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("123");request.setAttribute("name","name");response.sendRedirect("Dome2");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);}
}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("/Dome2")
public class Dome2 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");System.out.println("張三");request.setAttribute("name","張三");System.out.println(request.getAttribute("name"));}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);}
}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("/Dome3")
public class Dome3 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//1. 設置狀態碼為302response.setStatus(302);//2.設置響應頭locationresponse.setHeader("location","/Dome4");System.out.println("你好呀");}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);}
}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("/Dome4")
public class Dome4 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("你好");
// System.out.println( request.getContextPath());
// String contextPath = request.getContextPath();
// System.out.println(contextPath);
// //簡單的形式,設置編碼,是在獲取流之前設置
// response.setContentType("text/html;charset=utf-8");
// PrintWriter pw = response.getWriter();
// System.out.println(pw);}protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request,response);}
}
訪問 http://localhost:8080/login.html 后隨便填寫賬戶和密碼,后端會重定向到demo2,瀏覽器url也能看出重定向到了demo2
訪問 http://localhost:8080/logan1.html 點擊超鏈接 也會重定向到demo2
直接訪問 http://localhost:8080/Dome3 會重定向到demo4
用到的jar: javax.servlet.jar