zoukankan      html  css  js  c++  java
  • Session 案例:简单完成登录功能

    1,LoginServlet.java 登录Servlet  用Session保存登陆成功用户,代码如下:

    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 {  
        public 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中存一标记登陆成功   
                response.sendRedirect("/MyWebStart/index.jsp");  
        }  
      
          
        public void doPost(HttpServletRequest request, HttpServletResponse response)  
                throws ServletException, IOException {  
      
            doGet(request, response);  
        }  
      
    }  

    2,User类存储用户名和密码,代码如下:

    public class User {  
        private String username;  
        private String password;  
        public User() {  
            super();  
        }  
        public User(String username, String password) {  
            super();  
            this.username = username;  
            this.password = password;  
        }  
        public String getUsername() {  
            return username;  
        }  
        public void setUsername(String username) {  
            this.username = username;  
        }  
        public String getPassword() {  
            return password;  
        }  
        public void setPassword(String password) {  
            this.password = password;  
        }  
    }  

    3,DB类,模拟数据库实现简单的存储用户名和密码,代码如下:

    import java.util.ArrayList;  
    import java.util.List;  
      
    public class DB {  
        private static List<User> list = new ArrayList();  
        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.getUsername().equals(username)&&user.getPassword().equals(password)){  
                    return user;  
                }  
            }  
            return null;  
              
        }  
    }  

    4,Login.html

    <body>  
        <form action="/MyWebStart/servlet/LoginServlet" method="post">  
            用户名:<input type="text" name="username"></br>  
            密码:<input type="password" name="password"></br>  
            <input type="submit" value="提交">  
        </form>  
    </body>

    5,index.jsp

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
    <%@page import="com.lich.sample.login.User"%>  
      
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
    <html>  
      <head>      
        <title>Index.jsp</title>  
        <meta http-equiv="pragma" content="no-cache">  
        <meta http-equiv="cache-control" content="no-cache">  
        <meta http-equiv="expires" content="0">      
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">  
        <meta http-equiv="description" content="This is my page">  
        <!-- 
        <link rel="stylesheet" type="text/css" href="styles.css"> 
        -->  
      </head>  
      <body>  
            欢迎您:<%   
                    User user = (User)session.getAttribute("user");  
                    if(user!=null)out.write(user.getUsername());  
                  %>  
                  来访网站</br>  
                  <a href="/MyWebStart/Login.html">登陆</a>  
      </body>  
    </html>  
  • 相关阅读:
    持续集成系统敏捷开发的基石
    云计算对IT产业的影响
    类封装的驱动程序
    竹林蹊径:深入浅出Windows驱动开发
    云计算的SPI服务模型
    什么是云计算
    多态
    我们需要什么样的计算
    电子工业的发展也带动了电子设计自动化技术
    云计算的部署模型
  • 原文地址:https://www.cnblogs.com/lichone2010/p/3128178.html
Copyright © 2011-2022 走看看