📄 loginaction.java
字号:
// ----------------------------------------------------------
// $Id: $
// Copyright (c) SHSAFE 2005-2006. All Rights Reserved.
// ----------------------------------------------------------
package example.login;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import com.shsafe.common.database.DatabaseConnection;
import com.shsafe.common.database.DatabaseConnectionManager;
import example.common.dto.UserDTO;
import example.common.struts.CommonAction;
/**
* @author Michael J Chane
* @version $Revision: $ $Date: $
*/
public class LoginAction extends CommonAction {
/**
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
* @throws Exception
*/
public ActionForward init(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UserDTO userInfo = (UserDTO) request.getSession(true).getAttribute(
"userInfo");
if (userInfo != null) {
request.setAttribute("userName", userInfo.getName());
} else {
request.setAttribute("userName", "游客");
}
return mapping.findForward("success");
}
/**
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
* @throws Exception
*/
public ActionForward login(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
log.trace("Start");
LoginForm loginForm = ((LoginForm) form);
DatabaseConnection connection = DatabaseConnectionManager
.getMyConnection();
LoginDAO dao = new LoginDAO(connection);
UserDTO userInfo = dao.findByPrimaryKey(loginForm.getUserId());
ActionMessages msgs = new ActionMessages();
if (userInfo != null) {
String pwd = userInfo.getPassword();
if (!pwd.equals(loginForm.getPassword())) {
msgs.add("password", new ActionMessage("Invalid password!"));
saveErrors(request, msgs);
loginForm.setPassword("");
return mapping.findForward("failure");
}
} else {
msgs.add("userName", new ActionMessage("User not found!"));
saveErrors(request, msgs);
loginForm.setPassword("");
return mapping.findForward("failure");
}
request.getSession().setAttribute("userInfo", userInfo);
request.setAttribute("userName", userInfo.getName());
loginForm.setUserId("");
loginForm.setPassword("");
log.trace("End");
return mapping.findForward("success");
}
/**
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
* @throws Exception
*/
public ActionForward logout(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
log.trace("Start");
request.getSession().invalidate();
log.trace("End");
return new ActionForward("/login.do?processCategory=init");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -