Java 利用session 保存用户的登录信息

当用户登录了,则要将用户的信息保存下来。这样当他进入另外的网页的时候需要验证是否登录了。
登录的html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="/Demo2/LoginServlet" method="post">
        用户名:<input type="text" name="username"><br/>
        密码:<input type="password" name="password"><br/>
        <input type="submit" value="登陆">
    </form>
    
</body>
</html>

LoginServlet 界面

/**
 *  登录的servlet
 *  从 登录的 html中过来的数据
 */
public class LoginServlet extends HttpServlet {
     
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        String username=request.getParameter("username");
        String password=request.getParameter("password");
        User user=DB.find(username, password);
        if(user==null)
        {
            out.write("登录账号密码错误");
            return;
        }
        //接下里是进行保存到本地
        request.getSession().setAttribute("user", user); //向用户session中存一个登陆标记,也就是让用户登陆成功
        //重定向 指向刚才的 登录html
        response.sendRedirect("/Demo2/Login.jsp");
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request, response);
    }
    
    //数据库  模拟
    static class  DB{
        private static List<User> list = new ArrayList<User>();
        static{
            list.add(new User("aaa","123"));
            list.add(new User("bbb","123"));
            list.add(new User("ccc","123"));
        }
    public static User find(String username ,String password){
            for(User user : list){
                if(user.getName().equals(username) && user.getPassword().equals(password)){
                    return user;
                }
            }
            return null;
        }
    }

}

Login.jsp界面

<%@page import="jemo.com.logindemo.User"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
 
<title>登录</title>
</head>
<body>
      欢迎您:
       <%
         User user=(User)session.getAttribute("user");
         if(user!=null)
         {
             out.write(user.getName());
         }
       %>
       <br/>
       <a href="/Demo2/Login.html">登录</a>
</body>
</html>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容