SSH配置拦截器
2015-07-30 15:50
621 查看
配置loginInterceptor步骤:
1.
public class CheckLogin implements Interceptor {
public void destroy() {
System.out.println("------CheckLogin.destroy------");
}
public void init() {
System.out.println("------CheckLogin.i------");
}
public String intercept(ActionInvocation arg0) throws Exception {
System.out.println("------CheckLogin.intercept------");
Map session = ActionContext.getContext().getSession();
if(session.get("user.name")!=null) {
return arg0.invoke();
}
return "checkLoginFail";
}
}
2. struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 将Action的创建交给spring来管理 -->
<constant name="struts.objectFactory" value="spring" />
<package name="abstract_struts" abstract="true" extends="struts-default" namespace="/">
<interceptors>
<interceptor name="checkLogin" class="checkLoginInterceptor" />
<interceptor-stack name="myInterceptor">
<interceptor-ref name="checkLogin" />
<interceptor-ref name="defaultStack" />
</interceptor-stack>
</interceptors>
<global-results>
<result name="checkLoginFail">/login.jsp</result>
</global-results>
</package>
</struts>
3.applicationContext-beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
<!-- Spring管理Struts2的Action -->
<bean name="loginAction" class="com.jialin.action.LoginAction" scope="prototype"></bean>
<bean name="userMainAction" class="com.opensymphony.xwork2.ActionSupport" scope="prototype"></bean>
<bean name="userAction" class="com.jialin.action.UserAction" scope="prototype">
<!-- <property name="userManage" ref="userManage"></property> -->
</bean>
<!-- Spring管理Struts2的Interceptor -->
<bean name="checkLoginInterceptor" class="com.jialin.interceptor.CheckLogin" scope="prototype"></bean>
<bean name="userManage" class="com.jialin.service.UserManageImp">
<!-- <property name="userDao" ref="userDao"></property> -->
</bean>
<bean name="userDao" class="com.jialin.dao.UserDaoImp">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
</beans>
4. struts-user.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="loginAction" namespace="/" extends="abstract_struts">
<action name="login" class="loginAction">
<result name="success">/userMain.jsp</result>
<result name="fail">/fail.jsp</result>
<interceptor-ref name="myInterceptor" />
</action>
<!-- 该action只负责跳转,用struts提供的ActionSupport -->
<action name="userMain" class="userMainAction">
<result name="success">/userMain.jsp</result>
<interceptor-ref name="myInterceptor" />
</action>
</package>
<package name="userActions" namespace="/user" extends="abstract_struts">
<action name="*_*" class="userAction" method="{1}">
<result name="success" type="redirect">/{2}.jsp</result>
<result name="fail">/fail.jsp</result>
<interceptor-ref name="myInterceptor" />
</action>
</package>
</struts>
1.
public class CheckLogin implements Interceptor {
public void destroy() {
System.out.println("------CheckLogin.destroy------");
}
public void init() {
System.out.println("------CheckLogin.i------");
}
public String intercept(ActionInvocation arg0) throws Exception {
System.out.println("------CheckLogin.intercept------");
Map session = ActionContext.getContext().getSession();
if(session.get("user.name")!=null) {
return arg0.invoke();
}
return "checkLoginFail";
}
}
2. struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- 将Action的创建交给spring来管理 -->
<constant name="struts.objectFactory" value="spring" />
<package name="abstract_struts" abstract="true" extends="struts-default" namespace="/">
<interceptors>
<interceptor name="checkLogin" class="checkLoginInterceptor" />
<interceptor-stack name="myInterceptor">
<interceptor-ref name="checkLogin" />
<interceptor-ref name="defaultStack" />
</interceptor-stack>
</interceptors>
<global-results>
<result name="checkLoginFail">/login.jsp</result>
</global-results>
</package>
</struts>
3.applicationContext-beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd">
<!-- Spring管理Struts2的Action -->
<bean name="loginAction" class="com.jialin.action.LoginAction" scope="prototype"></bean>
<bean name="userMainAction" class="com.opensymphony.xwork2.ActionSupport" scope="prototype"></bean>
<bean name="userAction" class="com.jialin.action.UserAction" scope="prototype">
<!-- <property name="userManage" ref="userManage"></property> -->
</bean>
<!-- Spring管理Struts2的Interceptor -->
<bean name="checkLoginInterceptor" class="com.jialin.interceptor.CheckLogin" scope="prototype"></bean>
<bean name="userManage" class="com.jialin.service.UserManageImp">
<!-- <property name="userDao" ref="userDao"></property> -->
</bean>
<bean name="userDao" class="com.jialin.dao.UserDaoImp">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
</beans>
4. struts-user.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="loginAction" namespace="/" extends="abstract_struts">
<action name="login" class="loginAction">
<result name="success">/userMain.jsp</result>
<result name="fail">/fail.jsp</result>
<interceptor-ref name="myInterceptor" />
</action>
<!-- 该action只负责跳转,用struts提供的ActionSupport -->
<action name="userMain" class="userMainAction">
<result name="success">/userMain.jsp</result>
<interceptor-ref name="myInterceptor" />
</action>
</package>
<package name="userActions" namespace="/user" extends="abstract_struts">
<action name="*_*" class="userAction" method="{1}">
<result name="success" type="redirect">/{2}.jsp</result>
<result name="fail">/fail.jsp</result>
<interceptor-ref name="myInterceptor" />
</action>
</package>
</struts>
相关文章推荐
- neutron router-update如何增加路由
- 黑马程序员--C语言-指针函数及应用
- mongodb的用户认证
- java string 中文转换UTF-8
- 面向对象链接整理
- android:gravity="right" 没有居右侧
- Android 客户端登陆超时退出处理方案
- Eclipse 编译错误 Access restriction:The type *** is not accessible due to restriction on... 解决方案
- mysql处理上百万条的数据库如何优化语句来提高处理查询效率
- linux下vsftp软件正常启动了,也能正常连接,但是就是没办法正常浏览文件夹
- C#生成Code39条形码【非条形码字体】
- USB的枚举过程--自己写的(转载)
- Eclipse/MyEclipse自动补全的设置(自动提示)
- SetUnhandledExceptionFilter让程序优雅的崩溃
- FreeMarker使用说明
- Dom4j解析XML文档
- Android视图TMD感受
- HTML-移动端如何使用css让百分比布局的弹窗水平和垂直方向上居中
- C#生成Code39条形码【非条形码字体】
- JQUERY操作JSON