|
1.先写一个action
package action;public class InterceptorAction { public String fun1() { return "ok"; }}
2.配置action
<package name="base" extends="struts-default"> <global-results> <result name="message">/index.jsp</result> <result name="message">/WEB-INF/page/message.jsp</result> </global-results> </package> <package name="delversi" namespace="/test" extends="base"> <interceptors> <interceptor name="permission" class="interceptor.InterceptorDemo"></interceptor> <interceptor-stack name="permissionStack"> <interceptor-ref name="defaultStack"></interceptor-ref> <interceptor-ref name="permission"></interceptor-ref> </interceptor-stack> </interceptors> <action name="interceptor_*" class="action.InterceptorAction" method="{1}"> <interceptor-ref name="permission"></interceptor-ref> <result name="ok">/ddd.jsp</result> </action>
定义拦截器栈,是为了能使用系统自带的拦截器
3.写一个权限拦截器
package interceptor;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionInvocation;import com.opensymphony.xwork2.interceptor.Interceptor;public class InterceptorDemo implements Interceptor { public void destroy() { // TODO Auto-generated method stub } public void init() { // TODO Auto-generated method stub } public String intercept(ActionInvocation invocation) throws Exception { System.out.println("进入拦截器"); if (ActionContext.getContext().getSession().get("user") !=null ) { return invocation.invoke(); }else { ActionContext.getContext().put("message", "无权限"); return "message"; } }}登录了,返回ok,未登录返回message
4.写一个jsp,向session中注入user
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><% request.getSession().setAttribute("user","111");%>
转载请注明出处http://blog.csdn.net/z1104222568/article/details/42218125
|
上一篇:印尼官员:失联亚航航班并未发出求救信号下一篇:广西河池 吸粪车爆炸,国民素质提高了
|