全国统一学习专线

Struts 拦截器?

logo
来源:七品教育

2024-04-26|已帮助:86

进入 >

介绍aop的实现方式。

用于在实现动作之前和之后执行。

一般用于事物的操作。

一般用于拦截一些未授权的页面,拦截非法访问。

现成的拦截器必须有这个传递属性的拦截器。

按如下方式运行输出日志

2019-03-24 03:50:19.231[调试]com。开放式交响乐。xwork 2。ognl。securitymemberaccess。可访问(securitymemberaccess。Java:67)-检查对【目标:com。明。hello world action @ 33 e 67d 25,成员:公共Java。郎。字符串com。明。你好世界行动。getname()、property:name]2019-03-24 03:50:19.233执行]用了12毫秒可以看到这个行为一共运行耗时12毫秒

自定义拦截器需要继承抽象类并实现其方法,即com。open symphony . xwork 2 . interceptor . abstract interceptor抽象类。

代码如下所示

包装组件导入com。开放式交响乐。xwork 2。动作调用;导入com。开放式交响乐。xwork 2。截击机。抽象拦截器;公共类我的拦截器扩展抽象拦截器{@覆盖公共字符串拦截(ActionInvocation调用)引发异常{返回null}}实现该类的拦截机方法

包装组件导入com。开放式交响乐。xwork 2。动作调用;导入com。开放式交响乐。xwork 2。截击机。抽象拦截器;导入org。阿帕奇。伐木。log4j。日志管理器;导入org。阿帕奇。伐木。log4j。记录者;公共类我的拦截器扩展抽象拦截器{@覆盖公共字符串拦截(ActionInvocation调用)抛出异常日志记录器=日志管理器。get Logger();//执行结果前string output=' hi before logger . info(输出);//开始执行动作字符串结果=调用。invoke();//执行结果后output=' hi afterlogger.info(输出);//继续传递到下一个拦截器返回结果;}}更改配置文件

/HelloWorld.jsp /error.html效果如下

控制台输出如下

在执行之前和之后进行了两次操作。

这是面向方面的编程。

这里可以添加一个东西锁,这个东西锁可以通过redis来实现,这样当多个tomcat实例同时读取数据库时,就可以锁定它,使用redis来达到锁定的目的。

以上是七品教育整理的Struts 拦截器?全部内容。