Srevlet开发的项目——2.登录界面

这篇博客展示了如何使用Java Servlet进行用户登录验证。在`login.jsp`页面中,表单提交到`/loginServlet`,Servlet接收到请求后,通过`UserDao`查询用户信息,并对比用户名和密码。如果匹配成功,会话(session)中存储用户名并重定向到主页;否则,返回登录页面显示错误信息。
摘要由CSDN通过智能技术生成

login.jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page isELIgnored="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=request.getContextPath()%>/"/>
    <title>用户登录</title>
    <link type="text/css" rel="stylesheet" href="resources/css/style.css;">
</head>
<body bgcolor="#E7ECEF">
    <center>
        <form action="/loginServlet" method="post">
            <table border="0" cellspacing="0" cellpadding="0" style="margin-top:130px">
                <tr><td><img src="resources/images/logon_top.gif"></td></tr>
                <tr height="180">
                    <td background="resources/images/logon_middle.gif" align="center" valign="top">
                         <table border="0" width="90%" cellspacing="0" cellpadding="0">
                             <tr height="50"><td colspan="2"></td></tr>
                             <tr height="30">
                                 <td align="right" width="40%">用户名:&nbsp;&nbsp;</td>
                                 <td style="text-indent:5px">
                                     <input type="text" name="username" size="30px" value="" id="log_Login_action_user_userName"/>
                                     <span>${error}</span>
                                 </td>
                             </tr>                
                             <tr height="30">
                                 <td align="right">&nbsp;&nbsp;码:&nbsp;&nbsp;</td>
                                 <td style="text-indent:5px"><input type="password" name="password" size="30px" id="log_Login_action_user_userPassword"/></td>
                             </tr>
                             <tr height="60">
                                 <td></td>
                                 <td>
								
                                     <input type="submit" id="" value="登录"/>

                                     <input type="reset" value="重置"/>

                                     <a id="log_Login_action_" href="resources/view/indextemp.jsp">[返回首页]</a>
                                 </td>
                             </tr>
                         </table>
                    </td>
                </tr>
                <tr><td><img src="resources/images/logon_end.gif"></td></tr>
            </table>
        </form>



     
    </center>
</body>
</html>

AdminTOLoginServlet.java

package controller.admin;

import dao.UserDao;
import pojo.User;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;

/**
 * 管理员登录
 */
@WebServlet(name = "AdminTOLoginServlet",urlPatterns = "/loginServlet")
public class AdminTOLoginServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //处理中文乱码
        req.setCharacterEncoding("utf-8");
        resp.setCharacterEncoding("utf-8");
        //接收参数
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        //根据管理员的账号 查询管理员的信息(账号和密码)
        UserDao userDao=new UserDao();
       User user= userDao.selectAdminInfo(username);
       //对管理员登录,我们只需要判断密码和账号即可
        if(user.getUserName().equals(username)&&user.getUserPassword().equals(password)){
            //用户名和密码都匹配上了  去首页   同时绑定用户名到session中
            HttpSession session= req.getSession();//默认生命时长30m
            session.setAttribute("loginName",username);
           //将session绑定到
            //跳转到主页 转发
            req.getRequestDispatcher("/admin/AdminTemp.jsp").forward(req,resp);

        }else{
            //用户名或密码错误  将错误信息显示在登录页面
            req.setAttribute("error","用户名或者密码错误!");
            req.getRequestDispatcher("login.jsp").forward(req,resp);
        }




    }
}

@WebServlet(name = “AdminTOLoginServlet”,urlPatterns = “/loginServlet”)

上面的两句就是servlet实现前台与后台交互的关键,所以一定要把名字写对。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值