Struts2拦截器注解的简单例子

最近开发一个项目,技术架构由spring2+hibernate3+struts2+freemarker搭建。struts2的action视图转发工作,本人觉得用注解直接在代码上配置很方便,想省去了配置struts.xml操作。但就是由于自己懒惰,在开发过程中遇到了一些麻烦,因为对struts2注解的不熟悉,不知道怎样做拦截器的注解,后来经过在网上查资料和自己不断的搞测试,终于把问题搞定了。
下面是我写的一个个简单测试例子:
[b]//struts.xml[/b]
<struts>
<include file="struts-default.xml" />
<package name="default" extends="struts-default">

<interceptors>
<interceptor name="phoneUserInterceptor" class="phoneuserInterceptor"/>
<interceptor-stack name="myDefault">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="phoneUserInterceptor"/>
</interceptor-stack>
</interceptors>

<default-interceptor-ref name="myDefault"/>
</package>

</struts>
[b]//spring配置文件[/b]
<bean name="myInterceptor"
class="com.wichina.interceptor.MyInterceptor">
</bean>
[b]//拦截器[/b]
public class MyInterceptor extends AbstractInterceptor {

@Override
public String intercept(ActionInvocation invocation) throws Exception {

System.out.println("=============拦截器============="+new Date().toLocaleString());

return invocation.invoke();

}
}
[b]//action[/b]修改前,拦截器不起作用。
@Namespace("/dd")
public class TestAction extends ActionSupport {
@Action(value ="kk", results = { @Result(name = "dd", type="freemarker",location = "/WEB-INF/ftl/test.ftl") })
public String execute() throws Exception {
ServletActionContext.getRequest().setAttribute("name", "jade");
return "dd";
}

protected String todoExecute() throws Exception{
ServletActionContext.getRequest().setAttribute("name", "jade");
return "dd";
}
}
[b]//action[/b]修改后,拦截器起作用了。注意红色部分
[color=red]@ParentPackage("default")[/color]
@Namespace("/dd")
public class TestAction extends ActionSupport {
@Action(value ="kk", results = { @Result(name = "dd", type="freemarker",location = "/WEB-INF/ftl/test.ftl") })
public String execute() throws Exception {
ServletActionContext.getRequest().setAttribute("name", "jade");
return "dd";
}

protected String todoExecute() throws Exception{
ServletActionContext.getRequest().setAttribute("name", "jade");
return "dd";
}
}

参考资料:
在struts2.1中使用注解和拦截器实现权限细粒度控制
http://huashui.org/post/struts2-1-annotations-interceptor-authentication.html
使用 Struts2.16 annotation 注解方式配置拦截器的注意事项
http://hi.baidu.com/wd78/blog/item/9c0d958b32133c759e2fb4b8.html
在struts2.1中使用注解和拦截器实现权限细粒度控制
http://zhaosoft.iteye.com/blog/272290
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值