<!--案例----登录错误时显示错误界面-->
<!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>
javaweb练习请 求转发,转发页面一直是第一个if语句内容,无法执行到其他if语句内容?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 404警告 2021-07-21 12:19关注
错误点 使用变量不需要对变量添加双引号,添加双引号就成了字符串 而不是你使用request.getParameter获取出来的值
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无用
悬赏问题
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 ubuntu子系统密码忘记
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作