loginaction.java

来自「使用hibernate+struts2+spring实现的文件上传下载WEB工具」· Java 代码 · 共 63 行

JAVA
63
字号
package fm.action;

import java.util.Vector;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.sql.DataSource;

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.ActionMessage;
import org.apache.struts.action.ActionMessages;

import fm.Constants;
import fm.DB;
import fm.User;
import fm.form.LoginForm;

public final class LoginAction extends Action {
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {

		LoginForm loginForm = (LoginForm) form;
		String username = loginForm.getUsername();
		String password = loginForm.getPassword();

		ServletContext context = servlet.getServletContext();
		DataSource dataSource = (DataSource) context.getAttribute("fmDB");
		DB db = new DB(dataSource);

		String pageForward;
		HttpSession session = request.getSession();
		User loginuser = new User();

		if (!User.checkUser(db, username, password)) {
			
			ActionMessages errors = new ActionMessages();
			errors.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage(
					"error.login.failed"));
			if (!errors.isEmpty()) {
				saveErrors(request, errors);
			}
			pageForward = "ToErrorPage";
		} else {
			loginuser = User.search(db, username, password);
			session.setAttribute(Constants.LOGIN_USER_KEY, loginuser);
			
			Vector userVector = User.searchUsers(db);
			session.setAttribute(Constants.USER_LIST_KEY, userVector);
			pageForward = "ToUserList";
		}

		db.close();
		return (mapping.findForward(pageForward));
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?