adminloginaction.java

来自「struts+hibernate BBS mysql数据库 功能基本齐全」· Java 代码 · 共 51 行

JAVA
51
字号
package com.elan.forum.actions.admin;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

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.validator.DynaValidatorForm;

import com.elan.forum.actions.PubAction;
import com.elan.forum.elf.El;

public class AdminLoginAction extends PubAction {

	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		return this.executeAction(mapping, form, request, response);
	}
	private void cleanForm(ActionMapping mapping, HttpServletRequest request,
			HttpSession session) {
		if ("request".equals(mapping.getAttribute())) {
			request.removeAttribute(mapping.getAttribute());
		} else {
			request.removeAttribute(mapping.getAttribute());
		}
	}
	@Override
	protected ActionForward executeAction(ActionMapping mapping,
			ActionForm form, HttpServletRequest request,
			HttpServletResponse response) {
		String lastUrl = request.getParameter("url");
		String username = null;
		String password = null;
		username = (String)((DynaValidatorForm)form).get("username");
		password = (String)((DynaValidatorForm)form).get("password");
		HttpSession session = request.getSession();
		session.setAttribute("admin",El.getEl().getForumAdminMgr().checkAdminAndCreateAdmin(username, password));
		cleanForm(mapping, request, session);
		// 跳转到最后的URL,属于非正式登陆
		if (lastUrl != null && !"null".equals(lastUrl)) {
			return (new ActionForward(lastUrl.replace(request.getContextPath()
					+ "/forum", "")));
		}
		return mapping.findForward("success");
	}
}

⌨️ 快捷键说明

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