⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 userinfoformloadaction.java

📁 基于Struts的电子银行系统
💻 JAVA
字号:
/*
 * Created on 2005-7-27
 *
 */
package banksystem.action;

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

import org.apache.struts.action.DynaActionForm;
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 org.apache.commons.beanutils.BeanUtils;

import banksystem.VO.UserInfoActionForm;
import banksystem.Constants;
/**
 * @author 曲本盛
 *
 * TODO Struts 项目实践
 */
public class UserInfoFormLoadAction extends Action {
	public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		DynaActionForm loadForm = (DynaActionForm)actionForm;
		String action = (String)loadForm.get("action");
		
		HttpSession session = null;
		ActionMessages errors = this.getErrors(request);
		
		if(action.equals("create")){
			session = request.getSession(true);
			//设置该session最大生存时间
			//session.setMaxInactiveInterval(20);
		}
		else{
			session = request.getSession(false);
			if(session==null||session.getAttribute(Constants.KEY_CUSTOMER_INFO)==null){
				errors.add("failed",new ActionMessage(Constants.ERRORS_SESSION_INVALID));
				this.saveErrors(request,errors);
				return actionMapping.findForward("login");
			}
		}
		
		
		try{
			UserInfoActionForm newuserinfo = new UserInfoActionForm();
			if(!action.equals("create")){
				UserInfoActionForm userinfo = (UserInfoActionForm)session.getAttribute(Constants.KEY_CUSTOMER_INFO);
				BeanUtils.copyProperties(newuserinfo,userinfo);
			}
			//等到Session中的Bean将值复制给准备存入request中的Bean后,
			//才能将Action的值写入Request中的bean,因为Session中的Bean的Action值是无效的!!!
			newuserinfo.setAction(action);
			request.setAttribute(Constants.KEY_CUSTOMER_LOAD_INFO,newuserinfo);
			return actionMapping.findForward("success");
			
		}
		catch(Exception e){
			errors.add("failed",new ActionMessage(Constants.ERRORS_UNKNOWN_EXCEPTION,e.getMessage()));
			this.saveErrors(request,errors);
			if(action.equals("modify")){
				return actionMapping.findForward("errormodify");
			}
			else{
				return actionMapping.getInputForward();
			}
		}
	}
}

⌨️ 快捷键说明

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