html:
<!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=UTF-8">
<title>登录</title>
</head>
<body>
<font color="#0000FF"><h3>登 录</h3></font>
<form action="http://localhost:8080/javaweb/Login"
method="get">
<p><font color="#00FFFF"><label>姓名</label></font>
<input type="text" name="firstName" size="20"/>
<br>
<font color="#00FFFF"><label>密码</label></font>
<input type="password" name="userWord" size="20"/>
</p>
<p><input type="submit" value="登录"/>
<input type="button"  value="注册" /></p>
</form>
</body>
</html>
servlet代码:
package servlet;import java.io.*;
import java.sql.*;import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/**
 * Servlet implementation class Login
 */
@WebServlet("/Login")
public class Login extends HttpServlet {
private static final long serialVersionUID = 1L;
private PreparedStatement pstmt;
String firstName;
String userWord;
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Login() {
        super();
        // TODO Auto-generated constructor stub
    } /**
 * @see Servlet#init(ServletConfig)
 */
public void init(ServletConfig config) throws ServletException {
initializeJdbc();// TODO Auto-generated method stub
} /**
 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
 */
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out=response.getWriter();

 firstName=request.getParameter("firstName");
 userWord=request.getParameter("userWord");

try{
if(firstName.length()==0||userWord.length()==0){
out.println("用户名和密码不能为空");
return;
}
ResultSet rset=pstmt.executeQuery();
while(rset.next()){
 if(firstName==rset.getString(1)&
 userWord==rset.getString(2)){
response.sendRedirect("Userinfo");
break;
 }
}
out.println("<html>");
out.println("<body>");
out.println("用户名或密码不正确,请注册");
out.println("<p><a href='Register_Form.html'>注册</a></p>");
out.println("</body>");
out.println("</html>");
}
catch(Exception ex){
out.println("Error:"+ex.getMessage());
}
finally{
out.close();
}
// TODO Auto-generated method stub
}
private void initializeJdbc(){
try{
String driver="com.mysql.jdbc.Driver";
String connectionString="jdbc:mysql://localhost/Student2";

Class.forName(driver);

Connection conn=DriverManager.getConnection(connectionString);

String queryString=("select firstName,userWord from Student2");
pstmt=conn.prepareStatement(queryString);
}
catch(Exception ex){
ex.printStackTrace();
}
}

}

解决方案 »

  1.   

    <form action="http://localhost:8080/javaweb/Login" method="get">action写上web.xml配置的servlet名字就行比如配置的名称是LoginServlet,这里写action="LoginServlet"就行。
      

  2.   

    Login就行,然后再web.xml配置login和具体的实现类
      

  3.   

    <form action="http://localhost:8080/javaweb/Login" method="get">
      action 其实没必要那么写..可以直接写 Login.do然后再web.xml中配置 Login.do 与 具体的类
    例如:
     <servlet>
        <servlet-name>LoginServlet</servlet-name>
        <servlet-class>com.tianzhi.servlet.LoginServlet</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>LoginServlet</servlet-name>
        <url-pattern>/Login.do </url-pattern>
      </servlet-mapping>
      

  4.   

    servlet,没错,可以。
    你测试一下有什么问题吗?如果把数据查询写到另一个类里,就更好了