用户场景:在网页里输入:http://localhost:8080/Demo04/login_success.html ,出现登陆界面(login.html),输入正确账户密码后,点击提交后便跳转到另一个 html 页面。
做法:
login.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="LoginServlet" method="get">
<h2>请输入以下内容,完成登陆</h2>
账号:<input type="text" name="username"/><br>
密码:<input type="text" name="password"/><br>
<input type="submit" value="登陆">
</form>
</body>
</html>
登陆成功页面 login_success.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>登陆成功了</h2>
<a href="">获取网站登陆总数</a>
</body>
</html>
测试类
package com.itheima.servlet;
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;
public class LoginServlet extends HttpServlet {
//response 响应数据给浏览器,就靠这个对象
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.获取数据
String userName = request.getParameter("username");
String password = request.getParameter("password");
System.out.println("userName="+userName+"password"+password);
//2.校验数据
PrintWriter pw = response.getWriter();
if("admin".equals(userName) && "123".equals(password)){
// System.out.println("登陆成功");
pw.write("login success....");
//设置状态码,重新定位状态码
response.setStatus(302);
//成功就会跳转到 login.html网页
response.setHeader("Location", "login_success.html");
}else{
// System.out.println("登陆失败");
pw.write("login faild...");
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}