1.什么是安全登录?
安全登录的意思就是只有当你登录了该页面,才有资格和能力进入该web应用的其他页面,否则就将你打回到登录页面。
2.前端jsp代码
<%--
Created by IntelliJ IDEA.
User: Lenovo
Date: 2021/11/18
Time: 10:33
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="usertttttt">
<table style="background-color: lavender;border-radius: 10px">
<caption>
<h2 style="color: cornflowerblue">用户登录</h2>
</caption>
<tr>
<td>用户名:</td>
<td>
<input type="text" name="username" />
</td>
</tr>
<tr>
<td>密 码:</td>
<td>
<input type="text" name="usercode"/>
</td>
</tr>
<tr>
<td>
<input type="reset" value="重置">
</td>
<td>
<input type="submit" value="提交">
</td>
</tr>
</table>
</form>
</body>
</html>
2.servlet代码
package com.example.demo_shagnke;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.ArrayList;
public class usertttttt extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//在session中加入东西
HttpSession session = req.getSession();
session.setAttribute("list","90");
resp.sendRedirect("login111.jsp");
}
}
3.过滤器代码
package com.example.demo_shagnke;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.ArrayList;
public class sessionFilter implements Filter {
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
//首先我们得明白一件事,那就是只有http中才有session这个对象
HttpServletRequest request = (HttpServletRequest) servletRequest;//强转
HttpServletResponse response =(HttpServletResponse) servletResponse;//强转
HttpSession session = request.getSession();//获取sessio对象用于后面判断该用户是否已登录
String list = (String) session.getAttribute("list");//获取session对象中的list数组变量
//如果session对象中的list数组变量为空则,将用户踢到用户登录页面
if(list==null){
response.sendRedirect("login.jsp");
}else{
filterChain.doFilter(servletRequest,servletResponse);
}
}
}
**等我有时间了,再来梳理梳理以下代码。