Struts2-2.5.5版本是目前为止最新的版本了,相对于之前的2.3版本以及再之前的版本而言,新版本改动了很多。
好了,废话不多说,GO CODE!
基本jar包:
web.xml核心配置,这里要注意咯!
struts2 org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter struts.il8.encoding UTF-8 filterConfig classpath:struts.xml struts2 /*
web.xml
接下来是struts.xml
/WEB-INF/pages/sweet/404.jsp
struts.xml
可有可无,不要怕麻烦,前期是为了后期维护做准备的。
bean就不在粘贴了哈,需要的话,可以评论留言哈。
/** * 登录拦截器action */@SuppressWarnings("serial")public class LoginInterceptor implements Interceptor { //初始化 public void init { } //拦截 public String intercept(ActionInvocation invocation) throws Exception { /*if(LoginAction.class == invocation.getAction.getClass){ return invocation.invoke; }*/ Object action = invocation.getAction; if (action instanceof LoginAction) { //如果是LoginAction,则进行执行,即不做拦截 return invocation.invoke; } //判读session是否存在用户 User user = (User) ActionContext.getContext.getSession.get("user"); System.out.println(user); if(user == null){ System.out.println("action"); return "noLogin"; } //放行 return invocation.invoke; } //销毁 public void destroy { }}
LoginInterceptor
public class LoginAction extends ActionSupport implements ModelDriven{ private User user = new User; @Override public User getModel { // TODO Auto-generated method stub return user; } @Action(value="login") public String execute throws Exception { ActionContext actionContext = ActionContext.getContext; if ("admin".equals(user.getUsername) && "admin".equals(user.getPassword)) { actionContext.getSession.put("user", user); System.out.println("success"); return "success"; } else { System.out.println("input"); return "input"; } }}
LoginAction
只是部分关键性代码,需要项目的话,评论处留下联系方式。
没有考虑session过期的情况哈,只是最基础的登录拦截器而已,请多多指教谢谢。
转载请注明出处,谢谢!未经授权请勿私自对本文相关图片进行添加水印!