📄 loginservlet.java
字号:
package book.servlet;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import book.portal.*;
import book.portal.table.UserEO;
public class LoginServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
boolean bSuccess = true;// 判断是否登陆成功的标记
String errMessage = "";// 显示错误消息
UserEO user = null;// 定义一个UserEO对象
String name = request.getParameter("userName");// 获得用户名的值
String password = request.getParameter("passWord");// 获得密码的值
if (name == null || name.trim().equals(""))// 判断用户名是否为空
{
bSuccess = false;
errMessage = "Please enter user name";
}else{//如果不为空则查询数据库中是否存在该用户
String strSQL = "select user_id from ajax_user where user_name='"+ name+"'";
try {
ResultSet rs = DbManager.getResultSet(strSQL);
rs.last();
int row = rs.getRow();
if (row!=1)
{
bSuccess=false;
errMessage = "This user name is not exist";
}
} catch (SQLException e) {
bSuccess = false;
}
}
if (bSuccess && (password == null || password.trim().equals("")))// 判断密码是否为空
{
bSuccess = false;
errMessage = "Please enter password";
}
if (bSuccess)// 如果都不为空,则查询数据库
{
// 查询的sql语句
String strSQL = "select user_id from ajax_user where user_name='"
+ name + "' and password='" + password + "'";
try {
ResultSet rs = DbManager.getResultSet(strSQL);// 获得一个记录集
rs.last();// 移动到最后一行
int row = rs.getRow();// 获得总的记录数
if (row == 1)// 如果只找到一条记录,则表示找到该对应的用户
{
user = new UserEO(rs.getInt("USER_ID"));// 实例化该用户
HttpSession session = ((HttpServletRequest) request)
.getSession(true);
session.setAttribute("user", user.getId()+"");// 设置session;
} else {// 如果没找到该用户
bSuccess = false;
errMessage = "Invalid password!";
}
} catch (SQLException e) {
bSuccess = false;
errMessage = "Invalid user name or password!";
}
}
if (bSuccess)// 如果登陆成功,则转向homepage.jsp页面.
{
RequestDispatcher dispatcher = request.getRequestDispatcher("homepage.jsp");
dispatcher.forward(request, response);
} else {// 如果没有登陆成功,返回错误信息
response.setContentType("text/html");
java.io.PrintWriter out = response.getWriter();
out.println(errMessage);
}
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
doPost(request, response);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -