鱼C论坛

 找回密码
 立即注册
查看: 1034|回复: 3

为什么提交的请求路径存在登入后还是404

[复制链接]
发表于 2023-5-9 09:22:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
login.jsp
<%--
  Created by IntelliJ IDEA.
  User: Chen
  Date: 2023/5/9
  Time: 8:44
  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>
<h2>用户登入</h2>
<form action="/day05-filter-listener/LoginServlet" method="post">
    用户名:<input type="text" name="username"> <br>
    密码: <input type="password" name="password"> <br>
    <input type="submit" value="登入">
</form>
</body>
</html>

loginServlet
<%--
  Created by IntelliJ IDEA.
  User: Chen
  Date: 2023/5/9
  Time: 8:44
  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>
<h2>用户登入</h2>
<form action="/day05-filter-listener/LoginServlet" method="post">
    用户名:<input type="text" name="username"> <br>
    密码: <input type="password" name="password"> <br>
    <input type="submit" value="登入">
</form>
</body>
</html>

welcome.jsp

<%--
  Created by IntelliJ IDEA.
  User: Chen
  Date: 2023/5/9
  Time: 8:57
  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>
<h2>登入成功欢迎你${username}</h2>
</body>
</html>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-5-9 09:23:07 | 显示全部楼层

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-5-9 09:24:24 | 显示全部楼层

                               
登录/注册后可看大图
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-9 10:16:16 | 显示全部楼层
从你提供的代码来看,你提供的 login.jsp 和 loginServlet 代码是完全一样的,这可能是问题的原因。实际上,你应该为 LoginServlet 创建一个Java类,而不是使用JSP页面。下面是一个简单的 LoginServlet 示例:
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 java.io.IOException;

@WebServlet("/day05-filter-listener/LoginServlet")
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // 获取用户名和密码
        String username = request.getParameter("username");
        String password = request.getParameter("password");

        // 验证用户名和密码(这里仅作演示,实际应用中应该连接数据库进行验证)
        if ("yourUsername".equals(username) && "yourPassword".equals(password)) {
            request.getSession().setAttribute("username", username);
            response.sendRedirect("welcome.jsp");
        } else {
            response.sendRedirect("login.jsp");
        }
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }
}

这个 LoginServlet 示例将处理用户登录请求,并根据用户名和密码是否匹配来重定向到 welcome.jsp 或 login.jsp 页面。注意,这里的用户名和密码验证仅作演示,实际应用中应该连接数据库进行验证。

要解决你遇到的404问题,请确保:

1. 删除错误的 loginServlet  JSP页面,创建一个正确的 LoginServlet  Java类。
2. 检查web.xml文件中的servlet和servlet-mapping配置是否正确。
3. 确保应用程序已经部署到Web服务器上,并且路径设置正确。

希望这能帮助你解决问题。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-22 06:41

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表