Struts2---自定义拦截器
来源:互联网 发布:对讲机写频软件下载 编辑:程序博客网 时间:2024/05/24 04:38
整体架构:
一:UserIfo
public class UserInfo { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; }}
二:LoginAction
public class LoginAction implements Action { private UserInfo user; public String execute() throws Exception { Map<String, Object> session = ActionContext.getContext().getSession(); if (user != null) { if (user.getUsername().equals("1") && user.getUsername().equals("1")) { session.put("uname", user.getUsername()); return SUCCESS; } else { return LOGIN; } } else { if (session != null && session.get("uname") != null) { return "success"; } else { System.out.println("自定义代码"); return "login"; } } } public UserInfo getUser() { return user; } public void setUser(UserInfo user) { this.user = user; }}
三:BookActionpublic class BookAction implements Action { public String execute() throws Exception { System.out.println("bookaction"); return SUCCESS; }}
四:MyInterceptor
public class MyInterceptor implements Interceptor { public void destroy() { } public void init() { System.out.println("拦截器已经成功初始化....."); } public String intercept(ActionInvocation invocation) throws Exception { System.out.println("对象" + invocation); Object action = invocation.getAction(); System.out.println("action===========" + action); String value; Map<String, Object> session = ActionContext.getContext().getSession(); Object name = session.get("uname"); String actionName = invocation.getProxy().getActionName(); invocation.getProxy().getNamespace(); System.out.println("actionNmae=============" + actionName); if (actionName.equals("login")) { System.out.println("================"); value = invocation.invoke(); } else if (name != null) { value = invocation.invoke(); String method = invocation.getProxy().getMethod(); System.out.println("方法名=========" + method); } else { value = "login"; } System.out.println("逻辑视图名====" + value); return value; }}
五:struts-day07-02.xml
<struts> <constant name="struts.devMode" value="true"></constant> <package name="day07" namespace="/" extends="default"> <action name="login" class="cn.day07interceptor02.action.LoginAction"> <result name="success">/WEB-INF/myinter/success.jsp</result> <result name="login">/WEB-INF/myinter/login.jsp</result> </action> <action name="book" class="cn.day07interceptor02.action.BookAction"> <result name="success">/WEB-INF/myinter/booksuccess.jsp</result> </action> </package></struts>六:struts.ml
<struts> <constant name="struts.devMode" value="true"></constant> <package name="day07" namespace="/" extends="default"> <action name="login" class="cn.day07interceptor02.action.LoginAction"> <result name="success">/WEB-INF/myinter/success.jsp</result> <result name="login">/WEB-INF/myinter/login.jsp</result> </action> <action name="book" class="cn.day07interceptor02.action.BookAction"> <result name="success">/WEB-INF/myinter/booksuccess.jsp</result> </action> </package></struts><struts> <!--支持动态方法调用--> <constant name="struts.enable.DynamicMethodInvocation" value="false"/> <!--修改struts.xml 不用重启容器--> <constant name="struts.devMode" value="true"/> <package name="default" namespace="/" extends="struts-default"> <interceptors> <interceptor name="myInter" class="cn.happy.day07interceptor.interceptor.MyInterceptor"></interceptor> <interceptor-stack name="myStack"> <interceptor-ref name="defaultStack"></interceptor-ref> <interceptor-ref name="myInter"></interceptor-ref> </interceptor-stack> </interceptors> <default-interceptor-ref name="myStack"></default-interceptor-ref> <default-action-ref name="first"></default-action-ref> <action name="first"></action> <!--<global-results> <result name="error">/WEB-INF/jsp/error.jsp</result> </global-results>--> <!-- <global-exception-mappings> <exception-mapping exception="java.lang.Exception" result="error"></exception-mapping> </global-exception-mappings>--> <action name="helloWord" class="cn.day01.action.TestAction01"> <result name="success">day01jsp/first.jsp</result> </action> </package> <!--<include file="struts-day03.xml"></include> <include file="struts-day05.xml"></include> <include file="struts-day06.xml"></include> <include file="struts-day04.xml"></include> <include file="struts-day07.xml"></include> <include file="struts-day08.xml"></include>--> <include file="struts-day07-02.xml"></include></struts>
七:login.jsp<body><h2>登录</h2><s:form method="POST" action="login"> 请输入用户名: <s:textfield name="user.username"></s:textfield> <br/> <s:textfield name="user.password"></s:textfield><br/> <s:submit value="登陆"></s:submit></s:form></body>
八:执行访问页面,localhost:8080/login
输入1.1
在次输入login地址
直接
输入book
同上
阅读全文
0 0
- struts2 自定义拦截器
- Struts2自定义拦截器
- Struts2自定义拦截器
- struts2自定义拦截器
- Struts2自定义拦截器
- Struts2自定义拦截器
- Struts2自定义拦截器
- Struts2自定义拦截器
- struts2自定义拦截器
- Struts2---自定义拦截器
- struts2自定义拦截器
- struts2自定义拦截器
- Struts2自定义拦截器
- struts2自定义拦截器
- struts2自定义拦截器
- struts2自定义拦截器
- struts2自定义拦截器
- struts2自定义拦截器
- Linux中的中断处理机制
- LSTM模型理论总结
- TCP连接的状态详解以及故障排查
- cocos2dx-3.4环境搭建及apk发布调试之谜海归巢
- eclipse中给类制定注释模板
- Struts2---自定义拦截器
- JavaWeb学习心得之Tomcat服务器(一)
- 技术团队开发流程
- 用OpenCV的GaussianBlur函数做高斯滤波
- Spark官网资料学习网址
- 学会Nginx,10倍提升你的Web应用性能!
- 马云:要是哭有用我每天哭
- Java工程师为何如此火爆?
- Math