📄 processlogin.java
字号:
package course.select;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import jdbc.*;
import jdbc.DatabaseConnection;
import java.sql.*;
import exception.*;
public class ProcessLogin extends HttpServlet
{
public void doGet(HttpServletRequest req,HttpServletResponse resp) throws IOException
{
processRequest(req,resp);
}
public void doPost(HttpServletRequest req,HttpServletResponse resp) throws IOException
{
processRequest(req,resp);
}
protected void processRequest(HttpServletRequest req,HttpServletResponse resp) throws IOException
{
String user=req.getParameter("user");
//保存提交的用户名
String password=req.getParameter("password");
//保存提交的密码
/*
DatabaseConnection connection=new DatabaseConnection();
//产生与数据库连接的类的实例,可能抛出SQLException
try
{
out.println("before");
connection.connect();
out.println("middle");
password=connection.getPassword(user);
out.println(password);
out.println("after");
}
catch(ClassNotFoundException e)
{
e.printStackTrace(out);
}
catch(SQLException e)
{
e.printStackTrace(out);
}
*/
OutputStream os=resp.getOutputStream();
DataOutputStream dos=new DataOutputStream(os);
//获得向MIDlet返回信息的流
try
{
if(isValid(user,password))
//检验密码是否正确
{
dos.writeInt(1);
//返回提示信息
}
}
catch(SQLException e)//与数据库连接错误
{
dos.writeInt(-3);
//-3代表与数据库连接错误
//返回提示信息
}
catch(UserNotExistException e)//用户名不存在
{
dos.writeInt(-1);
//-1代表用户名不存在
//返回提示信息
}
catch(PasswordWrongException e)//密码错误
{
dos.writeInt(-2);
//-2代表密码错误
//返回提示信息
}
catch(DriverException e)
{
dos.writeInt(-3);
//驱动错误属于数据库联接错误
}
finally
{
dos.close();
}
//调试用代码
/*
PrintWriter out=resp.getWriter();
out.println(user);
out.println(password);
try
{
if(isValid(user,password))
//检验密码是否正确
{
out.println("correct");
}
}
catch(SQLException e)//与数据库连接错误
{
out.println("SQLException");
}
catch(UserNotExistException e)//用户名不存在
{
out.println("UserNotExistException");
}
catch(PasswordWrongException e)//密码错误
{
out.println("PasswordWrongException");
}
catch(DriverException e)
{
out.println("DriverException");
}
finally
{
out.close();
}
*/
}
protected boolean isValid(String pUser,String pPassword) throws UserNotExistException,PasswordWrongException,DriverException,SQLException
{
//验证用户名与密码
String user=pUser;
//保存提交的用户名
String password=null;
//保存从数据库中获得的密码
DatabaseConnection connection=new DatabaseConnection();
//产生与数据库连接的类的实例,可能抛出SQLException
connection.connect();
if(connection!=null)
password=connection.getPassword(user);
//System.out.println(user);
//System.out.println(password);
if(password==null)
//用户名不存在
throw new UserNotExistException();
else
if(!password.equals(pPassword))
//密码错误
throw new PasswordWrongException();
//connection.close();
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -