📄 checklogin.java
字号:
package pmsys.wyj;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.DynaActionForm;
import org.apache.struts.actions.DispatchAction;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import pmsys.*;
public class CheckLogin extends DispatchAction {
/**
* 登录验证
*/
public ActionForward login(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
ArrayList dlist2 = new ArrayList();
HttpSession session = request.getSession();
DynaActionForm dyform = (DynaActionForm) form;
String checkcode = (String) session.getAttribute("rand");
String username = (String) dyform.get("username");
String userpsw = (String) dyform.get("userpsw");
String code = (String) dyform.get("code");
String type = (String) dyform.get("type");
if(!code.equals(checkcode)){
UserForm dept2 = new UserForm();
dept2.setDname("验证码不正确!");
dlist2.add(dept2);
request.setAttribute("dept2",dlist2);
return mapping.findForward("login");
}
Connection conn = null;
try{
DataSource ds = (DataSource)this.getDataSource(request,"oracledb");
conn = ds.getConnection();
//查找数据库中帐号和密码是否匹配
String sql = "SELECT * FROM admins WHERE admin_name=? AND admin_mima=? AND admin_grant=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1,username);
pstmt.setString(2,userpsw);
pstmt.setString(3,type);
ResultSet rs = pstmt.executeQuery();
if(rs.next()){ //登录成功
if("admin".equals(rs.getString("admin_grant"))){ //管理员身份
session.setAttribute("flag",username);
String flag = (String)session.getAttribute("flags");
if(flag != null) {
session.removeAttribute("flags");
System.out.println(flag);
}
}else{ //用户身份
String flag = (String)session.getAttribute("flag");
if(flag != null) {
session.removeAttribute("flag");
System.out.println(flag);
}
session.setAttribute("flags",username);
}
session.setAttribute("flages",username);
return mapping.findForward("index");
}else{ //登录不成功
UserForm dept2 = new UserForm();
dept2.setDname("用户名或密码不正确!");
dlist2.add(dept2);
}
} catch(Exception e1) {
e1.printStackTrace();
} finally {
if (conn != null) {
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
request.setAttribute("dept2",dlist2);
return mapping.findForward("login");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -