• 模拟用户登录功能


    1 html部分代码

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>会员登录</title>
    <link rel="stylesheet" href="css/bootstrap.min.css" type="text/css" />
    <script src="js/jquery-1.11.3.min.js" type="text/javascript"></script>
    <script src="js/bootstrap.min.js" type="text/javascript"></script>
    <!-- 引入自定义css文件 style.css -->
    <link rel="stylesheet" href="css/style.css" type="text/css" />
    
    <style>
    body {
        margin-top: 20px;
        margin: 0 auto;
    }
    
    .carousel-inner .item img {
        width: 100%;
        height: 300px;
    }
    
    .container .row div {
        /* position:relative;
                     float:left; */
        
    }
    
    font {
        color: #666;
        font-size: 22px;
        font-weight: normal;
        padding-right: 17px;
    }
    </style>
    </head>
    <body>
    
        <!-- 引入header.jsp -->
        <jsp:include page="/header.jsp"></jsp:include>
    
    
        <div class="container"
            style=" 100%; height: 460px; background: #FF2C4C url('images/loginbg.jpg') no-repeat;">
            <div class="row">
                <div class="col-md-7">
                    <!--<img src="./image/login.jpg" width="500" height="330" alt="会员登录" title="会员登录">-->
                </div>
    
                <div class="col-md-5">
                    <div
                        style=" 440px; border: 1px solid #E7E7E7; padding: 20px 0 20px 30px; border-radius: 5px; margin-top: 60px; background: #fff;">
                        <font>会员登录</font>USER LOGIN
                        <div><%=request.getAttribute("loginInfo")==null?"":request.getAttribute("loginInfo")%></div>
                        <form class="form-horizontal" action="/WEB15/login" method="post">
                            <div class="form-group">
                                <label for="username" class="col-sm-2 control-label">用户名</label>
                                <div class="col-sm-6">
                                    <input type="text" class="form-control" id="username" name="username"
                                        placeholder="请输入用户名">
                                </div>
                            </div>
                            <div class="form-group">
                                <label for="inputPassword3" class="col-sm-2 control-label">密码</label>
                                <div class="col-sm-6">
                                    <input type="password" class="form-control" id="inputPassword3" name="password"
                                        placeholder="请输入密码">
                                </div>
                            </div>
                            <div class="form-group">
                                <label for="inputPassword3" class="col-sm-2 control-label">验证码</label>
                                <div class="col-sm-3">
                                    <input type="text" class="form-control" id="inputPassword3"
                                        placeholder="请输入验证码">
                                </div>
                                <div class="col-sm-3">
                                    <img src="./image/captcha.jhtml" />
                                </div>
                            </div>
                            <div class="form-group">
                                <div class="col-sm-offset-2 col-sm-10">
                                    <div class="checkbox">
                                        <label> <input type="checkbox"> 自动登录
                                        </label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <label> <input
                                            type="checkbox"> 记住用户名
                                        </label>
                                    </div>
                                </div>
                            </div>
                            <div class="form-group">
                                <div class="col-sm-offset-2 col-sm-10">
                                    <input type="submit" width="100" value="登录" name="submit"
                                        style="background: url('./images/login.gif') no-repeat scroll 0 0 rgba(0, 0, 0, 0); height: 35px;  100px; color: white;">
                                </div>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    
        <!-- 引入footer.jsp -->
        <jsp:include page="/footer.jsp"></jsp:include>
    
    </body>
    </html>

    2 LoginServlet代码

    package login;
    
    import java.io.IOException;
    import java.sql.SQLException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.apache.commons.dbutils.QueryRunner;
    import org.apache.commons.dbutils.handlers.BeanHandler;
    
    import com.ithiema.register.User;
    import com.ithiema.utils.DataSourceUtils;
    
    public class LoginServlet extends HttpServlet {
    
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            
            request.setCharacterEncoding("UTF-8");
            
            //1、获得用户名和密码
            String username = request.getParameter("username");
            String password = request.getParameter("password");
            //2、调用一个业务方法进行该用户查询
            User login = null;
            try {
                login = login(username,password);
            } catch (SQLException e) {
                e.printStackTrace();
            }
            //3、通过user是否为null判断用户名和密码是否正确
            if(login!=null){
                //用户名和密码正确
                //登录成功 跳转到网站的首页
                response.sendRedirect(request.getContextPath());
            }else{
                //用户名或密码错误
                //跳回当前login.jsp
                //使用转发 转发到login.jsp  向request域中存储错误信息
                request.setAttribute("loginInfo", "用户名或密码错误");
                request.getRequestDispatcher("/login.jsp").forward(request, response);
            }
            
        }
        
        public User login(String username,String password) throws SQLException{
            QueryRunner runner = new QueryRunner(DataSourceUtils.getDataSource());
            String sql = "select * from user where username=? and password=?";
            User user = runner.query(sql, new BeanHandler<User>(User.class), username,password);
            return user;
        }
    
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            doGet(request, response);
        }
    }
  • 相关阅读:
    移动端适配方案
    js基础知识复习
    js单线程的本质-------Event Loop
    第13课 字典
    第12课 习题讲解
    第11课 循环嵌套和算法
    第10课 文件的读写
    第9课 循环语句与注释
    第8课 对象的方法
    第7课 初识函数
  • 原文地址:https://www.cnblogs.com/jepson6669/p/8319159.html
Copyright © 2020-2023  润新知