博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts2之Struts2-2.5.5 Interceptor
阅读量:4292 次
发布时间:2019-05-27

本文共 2623 字,大约阅读时间需要 8 分钟。

Struts2-2.5.5版本是目前为止最新的版本了,相对于之前的2.3版本以及再之前的版本而言,新版本改动了很多。

好了,废话不多说,GO CODE!

基本jar包:

Struts2之Struts2-2.5.5 Interceptor

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过期的情况哈,只是最基础的登录拦截器而已,请多多指教谢谢。

转载请注明出处,谢谢!未经授权请勿私自对本文相关图片进行添加水印!

你可能感兴趣的文章
Spring Boot 中使用一个注解轻松将 List 转换为 Excel 下载
查看>>
高并发环境下,先操作数据库还是先操作缓存?
查看>>
MySQL Explain详解
查看>>
一直搞不清楚什么是读写分离,主从复制的原理,今天总算搞懂了
查看>>
消息队列 mq 必会面试题
查看>>
线程池的工作原理是啥?能手写一个线程池吗?
查看>>
Java程序内存的简单分析
查看>>
Javascript单例模式概念与实例
查看>>
SQL NULL 函数
查看>>
多例设计模式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
Android Studio里面配置Tesseract
查看>>
深入浅出JavaScript之this
查看>>
Android include标签的使用注意事项
查看>>
final成员变量和final局部变量
查看>>
Android数据加密之异或加密算法
查看>>
greenDao好的示例网址
查看>>
Android自定义控件--仿安全卫士中的一键加速
查看>>
Android Tools Attributes,让布局设计所见即所得
查看>>