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

📄 loginaction.java

📁 Spring2.0宝典
💻 JAVA
字号:
/*******************************************************************
<br>Copyright (C), 2005-2008, yeeku.H.Lee
<br>Program Name:
<br>Author:yeeku.H.lee kongyeeku@163.com
<br>Version:1.0
<br>This program is protected by copyright laws.
<br>Date: 
*******************************************************************/

package lee;

import com.opensymphony.xwork.ModelDriven;
import com.opensymphony.xwork.Action;
import com.opensymphony.xwork.ActionContext;

import java.util.Map;

public class LoginAction implements Action,ModelDriven
{  
    private final static String LOGINFAIL="loginfail";
    private ValidBean vb;
    /**
    Action接口中定义的常用的返回值
    public static final String SUCCESS = "success"; 
    public static final String NONE = "none"; 
    public static final String ERROR = "error"; 
    public static final String INPUT = "input"; 
    public static final String LOGIN = "login"; 
    */

    LoginInfo loginInfo = new LoginInfo(); 

    public void setVb(ValidBean vb)
    {
        this.vb = vb;
    }
 
    public String execute() throws Exception
    { 
        if (vb.valid(loginInfo.getUsername(),loginInfo.getPassword())) 
        {
            /** ActionContext我们在代码中实现与 Servlet API无关的容器交互
                保证了 Xwork 所面向的是一个通用的开放结构。从而使得逻辑层与表现
                层无关。增加了代码重用的可能。
                我们也可以通过ServletActionContext.getRequest()来获取HttpServletRequest对象,
                但增加了耦合,因此不推荐如此做
            */
            ActionContext ctx = ActionContext.getContext(); 
            //将当前登录的用户名保存到Session,ActionContext会根据环境来确定采用怎样的容器访问组件
            Map session = ctx.getSession(); 
            session.put("username",loginInfo.getUsername()); 
            return SUCCESS; 
        }
        else
        { 
            loginInfo.setErrorMessage("您输入的用户名和密码不匹配!"); 
            return LOGINFAIL; 
        } 
    } 
    //以下接口来自ModelDriven接口
    public Object getModel()
    { 
        return loginInfo; 
    } 
} 

⌨️ 快捷键说明

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