登录(考虑用户名和密码)

来源:互联网 发布:新浪微博发淘宝链接 编辑:程序博客网 时间:2024/05/17 00:12

放入request域:
ServletActionContext.getRequest().setAttribute(“name”,”name”);
ActionContext.getContext().put(“name”,name);
放入session域:
ActionContext.getContext().getSession().put(“name”,name);
登录页面login.jsp

<font color="red">${requestScope.error}</font><form action="login" method="post">    <s:fielderror escape="false"></s:fielderror>    用户名:<input type="text" name="username"><br><br>    密&nbsp;&nbsp;&nbsp;&nbsp;码:<input type="password" name="password"><br><br>    <input type="submit" value="登录">&nbsp;&nbsp;&nbsp;&nbsp;</form>

LoginAction.java

package nuc.sw.action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupport {    private String username;    private String password;    public String getUsername() {        return username;    }    public void setUsername(String username) {        this.username = username;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    /**     * 判断用户名和密码是否正确     * @return     * @throws Exception     */    public String execute() throws Exception{        if(username.equals("yangna")&&password.equals("123")){            //放入session            ActionContext.getContext().getSession().put("user",username);            return SUCCESS;        }else{            ActionContext.getContext().put("error", "用户名或密码错误!");            return ERROR;        }    }    /**     * 进行用户名和密码是否为空的校验     */    public void validate(){        if(username==null||username.trim().equals("")){            this.addFieldError("usernameError", "<font color='red'>用户名不能为空</font>");        }        if(password==null||password.trim().equals("")){            this.addFieldError("passwordError", "<font color='red'>密码不能为空</font>");        }    }}

struts.xml:

<package name="default" namespace="/" extends="struts-default">        <action name="login" class="nuc.sw.action.LoginAction" method="execute">        <result name="success">/hello.jsp</result>        <result name="error">/login.jsp</result>        <result name="input">/login.jsp</result>        </action>    </package>

hello.jsp:

<body>欢迎${sessionScope.user};</body>

在进行校验时使用ActionSupport提供的方法validate();

0 0
原创粉丝点击