Mysql HTTP状态404 servlet请求

Mysql HTTP状态404 servlet请求,mysql,servlets,login,Mysql,Servlets,Login,我正在尝试使用JSP站点和Servlet创建一个登录表单。在MySQL数据库中,我有以下列:FirstName、LastName、username和password。这里我补充了一些信息。当我运行我的JSP站点时,它应该检查LoginServlet,但是当我在JSP站点上点击submit时,我得到以下错误: HTTP Status 404 - /ConnectionLoginForm/LoginServlet type Status report message /ConnectionLogin

我正在尝试使用JSP站点和Servlet创建一个登录表单。在MySQL数据库中,我有以下列:
FirstName
LastName
username
password
。这里我补充了一些信息。当我运行我的JSP站点时,它应该检查
LoginServlet
,但是当我在JSP站点上点击submit时,我得到以下错误:

HTTP Status 404 - /ConnectionLoginForm/LoginServlet
type Status report
message /ConnectionLoginForm/LoginServlet
description The requested resource is not available.
我的Tomcat服务器正在运行等等。有人知道我为什么会犯这个错误吗?我放置JSP和servlet的路径应该是正确的。我正在使用Eclipse,我的JSP在WebContent下,servlet在src->package->servlet下。我发布了我所有的代码,但首先我可以想象只有JSP和LoginServlet存在问题?我希望有人能帮助我。向玛兹问好。 代码如下:

<%@ page language="java" 
    contentType="text/html; charset=windows-1256"
    pageEncoding="windows-1256"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
        <title>Login Page</title>
    </head>

    <body>
        <form action="LoginServlet">

            Please enter your username      
            <input type="text" name="un"/><br>      

            Please enter your password
            <input type="text" name="pw"/>

            <input type="submit" value="submit">            

        </form>
    </body>
</html>
UserBean Servlet:

package ExamplePackage;

public class UserBean {

    private String username;
    private String password;
    private String firstName;
    private String lastName;
    public boolean valid;


    public String getFirstName() {
       return firstName;
    }

    public void setFirstName(String newFirstName) {
       firstName = newFirstName;
    }


    public String getLastName() {
       return lastName;
            }

    public void setLastName(String newLastName) {
       lastName = newLastName;
            }


    public String getPassword() {
       return password;
    }

    public void setPassword(String newPassword) {
       password = newPassword;
    }


    public String getUsername() {
       return username;
            }

    public void setUserName(String newUsername) {
       username = newUsername;
            }


    public boolean isValid() {
       return valid;
    }

    public void setValid(boolean newValid) {
       valid = newValid;
    }   
}
package ExamplePackage;

import java.sql.*;
import java.util.*;


   public class ConnectionManager {

      static Connection con;
      static String url;

      public static Connection getConnection()
      {

         try
         {
            String url = "jdbc:mysql://localhost/ConnectionLoginFormDB"; 
            // assuming "DataSource" is your DataSource name

            Class.forName("com.mysql.jdbc.Driver");

            try
            {               
               con = DriverManager.getConnection(url,"username","password"); 

            // assuming your SQL Server's   username is "username"               
            // and password is "password"

            }

            catch (SQLException ex)
            {
               ex.printStackTrace();
            }
         }

         catch(ClassNotFoundException e)
         {
            System.out.println(e);
         }

      return con;
}
   }
userdaoservlet:

package ExamplePackage;

   import java.text.*;
   import java.util.*;
   import java.sql.*;

   public class UserDAO     
   {
      static Connection currentCon = null;
      static ResultSet rs = null;  



      public static UserBean login(UserBean bean) {

         //preparing some objects for connection 
         Statement stmt = null;    

         String username = bean.getUsername();    
         String password = bean.getPassword();   

         String searchQuery =
               "SELECT * FROM users WHERE username='"
                        + username
                        + "' AND password='"
                        + password
                        + "'";

      // "System.out.println" prints in the console; Normally used to trace the process
      System.out.println("Your user name is " + username);          
      System.out.println("Your password is " + password);
      System.out.println("Query: "+searchQuery);

      try 
      {
         //connect to DB 
         currentCon = ConnectionManager.getConnection();
         stmt=currentCon.createStatement();
         rs = stmt.executeQuery(searchQuery);           
         boolean more = rs.next();

         // if user does not exist set the isValid variable to false
         if (!more) 
         {
            System.out.println("Sorry, you are not a registered user! Please sign up first");
            bean.setValid(false);
         } 

         //if user exists set the isValid variable to true
         else if (more) 
         {
            String firstName = rs.getString("FirstName");
            String lastName = rs.getString("LastName");

            System.out.println("Welcome " + firstName);
            bean.setFirstName(firstName);
            bean.setLastName(lastName);
            bean.setValid(true);
         }
      } 

      catch (Exception ex) 
      {
         System.out.println("Log In failed: An Exception has occurred! " + ex);
      } 

      //some exception handling
      finally 
      {
         if (rs != null)    {
            try {
               rs.close();
            } catch (Exception e) {}
               rs = null;
            }

         if (stmt != null) {
            try {
               stmt.close();
            } catch (Exception e) {}
               stmt = null;
            }

         if (currentCon != null) {
            try {
               currentCon.close();
            } catch (Exception e) {
            }

            currentCon = null;
         }
      }

return bean;

      } 
   }
连接Servlet:

package ExamplePackage;

public class UserBean {

    private String username;
    private String password;
    private String firstName;
    private String lastName;
    public boolean valid;


    public String getFirstName() {
       return firstName;
    }

    public void setFirstName(String newFirstName) {
       firstName = newFirstName;
    }


    public String getLastName() {
       return lastName;
            }

    public void setLastName(String newLastName) {
       lastName = newLastName;
            }


    public String getPassword() {
       return password;
    }

    public void setPassword(String newPassword) {
       password = newPassword;
    }


    public String getUsername() {
       return username;
            }

    public void setUserName(String newUsername) {
       username = newUsername;
            }


    public boolean isValid() {
       return valid;
    }

    public void setValid(boolean newValid) {
       valid = newValid;
    }   
}
package ExamplePackage;

import java.sql.*;
import java.util.*;


   public class ConnectionManager {

      static Connection con;
      static String url;

      public static Connection getConnection()
      {

         try
         {
            String url = "jdbc:mysql://localhost/ConnectionLoginFormDB"; 
            // assuming "DataSource" is your DataSource name

            Class.forName("com.mysql.jdbc.Driver");

            try
            {               
               con = DriverManager.getConnection(url,"username","password"); 

            // assuming your SQL Server's   username is "username"               
            // and password is "password"

            }

            catch (SQLException ex)
            {
               ex.printStackTrace();
            }
         }

         catch(ClassNotFoundException e)
         {
            System.out.println(e);
         }

      return con;
}
   }
编辑:

web.xml

会不会是这样的:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>ConnectionLoginForm</display-name>
    <servlet>
        <servlet-name>LoginServlet</servlet-name>
        <servlet-class>ExamplePackage.LoginServlet</servlet-class>
    </servlet>  
    <servlet-mapping>
        <servlet-name>LoginServlet</servlet-name>
        <url-pattern>/LoginServlet</url-pattern>
    </servlet-mapping>
</web-app>

连接信息
罗金瑟夫莱特酒店
ExamplePackage.LoginServlet
罗金瑟夫莱特酒店
/罗金瑟夫莱特酒店
试试这个: 在web.xml中

  <servlet>
    <servlet-name>Servlet</servlet-name>
    <servlet-class>Servlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Servlet</servlet-name>
    <url-pattern>/servlet</url-pattern>
  </servlet-mapping>

Servlet
Servlet
Servlet
/servlet

您是否正确设置了七个映射注释在这里是什么样子的?或者我如何在web.xml中进行注释?我刚刚编辑了我的问题并将其放入了web.xml中。它看起来正确吗?当我运行代码时,我会进入“Invaliduserlogin.jsp”页面。所以现在发生了一些事情,但我只是得到了错误的页面:-/我再次检查,我输入了正确的信息