m0_62667564 2023-04-08 00:30 采纳率: 84.8%
浏览 41
已结题

JSP实现用户登录的问题

已有一个login.jsp作为登录页面,现建立doLogin.jsp要实现用户通过login页面登录,用户提交登录名和密码给这个login.jsp页面,在此JSP页面中获取用户登录的用户名和密码,并获取web.xml中保存的正确的用户名和密码进行验证,用application对象获取初始的用户名和密码 ;如果用户名/密码正确,在session中保存用户名,作为成功登录的记录,并跳转到home页面,反之,跳回到login页面。
login.jsp中的表单已经设置好了,但是在login.jsp页面中不管输入什么用户名和密码(即使与web.xml匹配)都不会跳转到home页面,只会跳转到login页面,而且session并没有被建立,这是为什么,哪里出错了

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>用户登录验证</title>
</head>
<body>
//获取输入的用户名和密码
<%
    String name = request.getParameter("userName");
    String pwd = request.getParameter("pwd");
    //System.out.println("用户名:"+name);
    //System.out.println("密码:"+pwd);
%>
<%
//获取web.xml中的用户名和密码
    String name2 = application.getInitParameter("userName");
    String pswd2 =application.getInitParameter("pwd");
    //System.out.println("存储的用户名:"+name2);
    //System.out.println("存储的密码:"+pswd2);
    //判断
    if(name2.equals(name)&&pswd2.equals(pwd)){
    //session记录登录成功
    request.getSession().setAttribute("loginUser",name);
%>
<%--跳转--%>
<jsp:forward page="home.jsp"></jsp:forward>
<%
    }else{
        request.getRequestDispatcher("login.jsp").forward(request,response);
    }
%>
</body>
</html>

请帮忙改正,谢谢

  • 写回答

3条回答 默认 最新

  • 关注

    检查2个地方:
    1.检查登录页面表单的action属性设置的url是不是跳转到用户验证页面;
    2.检查web.xml配置参数是否准确。
    最好是贴出登录页面及web.xml配置代码,更好的查看问题原因。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月17日
  • 已采纳回答 4月9日
  • 创建了问题 4月8日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装