Laughing girl2021 2021-07-21 11:17 采纳率: 100%
浏览 18
已采纳

javaweb练习请 求转发,转发页面一直是第一个if语句内容,无法执行到其他if语句内容?


<!--案例&#45;&#45;&#45;&#45;登录错误时显示错误界面-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<center>
     <h2>用户登录</h2>
     <form action="login" method="get">
       <p>账号:<input type="text" name="name"></p>
       <p>密码:<input type="text" name="passWord"></p>
       <input type="submit" value="登录">
     </form>
</center>

</body>
</html>

package com.pojo.test1;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;

@WebServlet(name = "loginServlet", urlPatterns = "/login")
public class loginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        String userName="daiping";
        String userPwd="123456";

        String name=request.getParameter("name");
        String passWord=request.getParameter("passWord");

        if (!userName.equals("name")){
            request.setAttribute("errorMessage","账户错误");
            request.getRequestDispatcher("/loginError.jsp").forward(request,response);
        }else if (!userPwd.equals("passWord")){
            request.setAttribute("errorMessage","密码错误");
            request.getRequestDispatcher("/loginError.jsp").forward(request,response);
        }else{
            response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY);
            response.setHeader("Location","/test1/Home.html");

//            response.sendRedirect("/test1/Home.html");
        }
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

<%--
  Created by IntelliJ IDEA.
  User: pan
  Date: 2021/7/19
  Time: 17:15
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<center>
<h2>用户登录界面错误</h2>
    <div>
        <%=request.getAttribute("errorMessage")%>
    </div>

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

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h2>来到我的网站!············</h2>
</body>
</html>

  • 写回答

2条回答 默认 最新

  • 404警告 2021-07-21 12:19
    关注

    错误点 使用变量不需要对变量添加双引号,添加双引号就成了字符串 而不是你使用request.getParameter获取出来的值

    img
    if位置更换如下代码 去掉双引号

    if (!userName.equals(name)){
                request.setAttribute("errorMessage","账户错误");
                request.getRequestDispatcher("/loginError.jsp").forward(request,response);
            }else if (!userPwd.equals(passWord)){
                request.setAttribute("errorMessage","密码错误");
                request.getRequestDispatcher("/loginError.jsp").forward(request,response);
            }else{
                response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY);
                response.setHeader("Location","/test1/Home.html");
     
    //            response.sendRedirect("/test1/Home.html");
            }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已采纳回答 7月21日
  • 创建了问题 7月21日

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作