|
1. Scrie mai întâi o acțiune acțiunea de pachet; clasa publică InterceptorAction { public String fun1() { return "ok"; }}
2. Configurarea acțiunii <numele pachetului="base" extinde="struts-default"> <global-results> <numele rezultatului="mesaj">/index.jsp</result> <numele rezultatului="mesaj">/WEB-INF/pagină/message.jsp </result> </global-results><numele </package> pachetului="delversi" spațiul de nume="/test" extinde="base"> <interceptors> <nume interceptor="permisiune" clasă="interceptor.InterceptorDemo"></interceptor> <numeinterceptor-stack="permisiuneStack"> <interceptor-ref name="defaultStack"></interceptor-ref> <interceptor-ref name="permission"></interceptor-ref> </interceptor-stack> </interceptors> <numele acțiunii="interceptor_*" clase="acțiune.InterceptorAction" metoda="{1}"> <interceptor-ref name="permission"></interceptor-ref> <numele rezultatului="ok">/ddd.jsp</result> </action>
Stack-ul interceptorului este definit pentru a putea folosi interceptorii încorporați ai sistemului
3. Scrie un blocator de permisiuni interceptor de pachete; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.Interceptor; clasa publică InterceptorDemo implementează Interceptor { public void destroy() { // TODO Metodă generată automat stub } public void init() { // TODO Auto-generat stub de metodă } public String intercept (invocare ActionInvocation) aruncă Exception { System.out.println("Enter interceptor"); } if (ActionContext.getContext().getSession().get("user") !=null ) { return invocation.invoke(); }altfel { ActionContext.getContext().put("message", "fără permisiune"); returnează "mesaj"; } }}Conectat, returnat OK, iar dacă nu, am returnat mesajul
4. Scrie un jsp și injectează utilizatorul în sesiune <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><% request.getSession().setAttribute("user","111");%>
Vă rugăm să indicați sursa pentru reeditarehttp://blog.csdn.net/z1104222568/article/details/42218125
|