日期:2014-05-20 浏览次数:20728 次
package cn.tmen.action; import cn.tmen.action.base.UserBaseAction; import cn.tmen.domain.Administrator; import cn.tmen.domain.Student; import cn.tmen.domain.Teacher; import static cn.tmen.service.UserService.LOGIN_ADM; import static cn.tmen.service.UserService.LOGIN_STU; import static cn.tmen.service.UserService.LOGIN_TEA; public class LoginAction extends UserBaseAction { //定义一个常量作为学生登录成功的Result名 private final String STU_RESULT = "stu"; //定义一个常量作为教师登录成功的Result名 private final String TEA_RESULT = "tea"; //定义一个常量作为管理员登录成功的Result名 private final String ADMIN_RESULT = "admin"; private Student stu; private Teacher tea; private Administrator admin; //处理登录后的提示信息 private String tip; private String name; private String pass; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPass() { return pass; } public void setPass(String pass) { this.pass = pass; } public Student getStu() { return stu; } public void setStu(Student stu) { this.stu = stu; } public Teacher getTea() { return tea; } public void setTea(Teacher tea) { this.tea = tea; } public Administrator getAdmin() { return admin; } public void setAdmin(Administrator admin) { this.admin = admin; } public String getTip() { return tip; } public void setTip(String tip) { this.tip = tip; } public String execute() throws Exception { // ActionContext ctx = ActionContext.getContext(); // // String name = (String) ctx.getSession().get("name"); // String pass = (String) ctx.getSession().get("pass"); int result = user.validLogin(getName(), getPass()); if(result==LOGIN_STU){ setTip("您已经成功登录系统"); return STU_RESULT; } else if(result == LOGIN_TEA){ setTip("您已经成功登录系统"); return TEA_RESULT; } else if(result == LOGIN_ADM){ setTip("您已经成功登录系统"); return ADMIN_RESULT; } else { setTip("用户名与密码不匹配"); return ERROR; } } }
package cn.tmen.action.base; import cn.tmen.service.UserService; import com.opensymphony.xwork2.ActionSupport; public class UserBaseAction extends ActionSupport { protected UserService user; public UserService getUser() { return user; } public void setUser(UserService user) { this.user = user; } }
<?xml version="1.0" encoding="GBK"?> <!-- 指定Struts2配置文件的DTD信息 --> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN" "http://struts.apache.org/dtds/struts-2.1.7.dtd"> <!-- Struts2配置文件的根元素 --> <struts> <!-- 配置了系列常量 --> <constant name="struts.custom.i18n.resources" value="resource"/> <constant name="struts.i18n.encoding" value="GBK"/> <constant name="struts.devMode" value="true"/> <package name="default" extends="struts-default"> <!-- 定义处理登录系统的Action --> <action name="processLogin" class="cn.tmen.action.LoginAction"> <result name="input">/WEB-INF/content/login.jsp</result> <result name="stu">/WEB-INF/content/student/index.jsp</result> <result name="tea">/WEB-INF/content/teacher/index.jsp</result> <result name="admin">/WEB-INF/content/administrator/index.jsp</result> <result name="error">/WEB-INF/content/login.jsp</result> </action> </package> </struts>