📄 loginaction.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 + -