解决方法:把拦截器配置到spring中就可以了。下面是实例:
1,自定义拦截器类1:
package com.dd.intercept;
import com.dd.action.PersonAction;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
public class CheckLoginInterceptor extends AbstractInterceptor {
//设置拦截器的名字
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String intercept(ActionInvocation invocation) throws Exception {
PersonAction action = (PersonAction)invocation.getAction();
System.out.println("拦截器1:开始拦截");
String result = invocation.invoke();
System.out.println("拦截器1:拦截结束");
return result;
}
}
2,自定义拦截器类2:
package com.dd.intercept;
import com.dd.action.PersonAction;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
public class CheckLoginInterceptor2 extends AbstractInterceptor {
//设置拦截器的名字
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String intercept(ActionInvocation invocation) throws Exception {
PersonAction action = (PersonAction)invocation.getAction();
System.out.println("拦截器2:开始拦截");
String result = invocation.invoke();
System.out.println("拦截器2:拦截结束");
return result;
}
}
3,配置struts配置文件;
<interceptors>
<interceptor name="checkLogin" class="checkLogin">
<param name="name">chenchaoyang</param>
</interceptor>
<interceptor name="checkLogin2" class="checkLogin2">
<param name="name">chenchaoyang</param>
</interceptor>
</interceptors>
<action name="addPerson" class="personAction" method="addPerson">
<result name="success">/person/addPerson_result.jsp</result>
<result name="input">/person/addPerson.jsp</result>
<result name="error">/person/addPerson_result.jsp</result>
<interceptor-ref name="defaultStack"></interceptor-ref>
<interceptor-ref name="checkLogin"></interceptor-ref>
<interceptor-ref name="checkLogin2"></interceptor-ref>
</action>
4,spring配置文件
<bean id="checkLogin" class="com.dd.intercept.CheckLoginInterceptor">
</bean>
<bean id="checkLogin2" class="com.dd.intercept.CheckLoginInterceptor2">
</bean>
5,action类:
package com.dd.action;
import com.dd.dao.PersonDao;
import com.dd.domain.Person;
import com.opensymphony.xwork2.ActionSupport;
public class PersonAction extends ActionSupport {
private PersonDao pd;
private Person person;
private String tip;
public PersonDao getPd() {
return pd;
}
public void setPd(PersonDao pd) {
this.pd = pd;
}
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
public String getTip() {
return tip;
}
public void setTip(String tip) {
this.tip = tip;
}
public String addPerson(){
System.out.println("开始添加人");
System.out.println(getPerson().getAddress());
System.out.println(getPerson().getName());
pd.addPerson(person);
System.out.println("添加完毕");
return "success";
}
}
6,结果输出:
拦截器1:开始拦截
拦截器2:开始拦截
开始添加人
1212
1212
开始持久化
Hibernate:
select
hibernate_sequence.nextval
from
dual
持久化结束
Hibernate:
insert
into
myperson
(name, address, id)
values
(?, ?, ?)
添加完毕
拦截器2:拦截结束
拦截器1:拦截结束
分享到:
相关推荐
SSH框架整合,全jpa注解真正的零配置。 struts2.3.8 spring3.2 hibernate4.1.9. 带有分页,全局异常,权限拦截器,session过滤等功能。 内有jar包。导入开发工具后部署既可跑起来。已做了简单的数据库操作功能。供...
使用struts2+spring+hiernate开发的小项目,供想自己搭建环境的兄弟们借鉴,使用了拦截器、过滤器做权限验证和字符集设置。以及spring配置hibernate数据源。数据库方面大家根据hibernate文件和数据源配置自己建立。 ...
SSH框架整合,全jpa注解真正的零配置。 struts2.3.8 spring3.2 hibernate4.1.9. 带有分页,全局异常,权限拦截器,session过滤等功能。 内有jar包。导入开发工具后部署既可跑起来。已做了简单的数据库操作功能。供...
也就是说Struts2的默认拦截器无法起作用, 这样的话不经过Struts2,这就意味着当项目有需要登录的功能时, 在未登录的情况下,这个端口依旧可以访问,这就带来了很大的安全隐患 要想起作用,请访问...
Spring4.0、Struts2.3.15、Hibernate4.2.4、jQuery1.9.1涉及到了诸多开发时的细节:ModelDriven、Preparable 拦截器、编写自定义的类型转换器、Struts2 处理 Ajax、OpenSessionInViewFilter、迫切左外连接、Spring ...
使用struts2+spring+hiernate开发的小项目,供想自己搭建环境的兄弟们借鉴,使用了拦截器、过滤器做权限验证和字符集设置。以及spring配置hibernate数据源。数据库方面大家根据hibernate文件和数据源配置自己建立。
SSH整合开发,MyElipse下源代码工作区,SQL文件,使用时创建名为morse的数据库,并执行morse.sql,该web应用使用了国际化、拦截器、规则验证等struts功能,实现将英文、中文转译为摩尔斯码点线码和音频码。...
第2篇为表现层框架Struts技术,介绍了Struts2的工作原理、核心文件、数据校验与国际化、标签库、拦截器等。第3篇为持久层框架Hibernate技术,介绍了Hibernate的工作原理、核心文件、核心接口及相关插件的使用方法。...
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的拦截器、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射...
第2篇为表现层框架Struts技术,介绍了Struts2的工作原理、核心文件、数据校验与国际化、标签库、拦截器等。第3篇为持久层框架Hibernate技术,介绍了Hibernate的工作原理、核心文件、核心接口及相关插件的使用方法。...
Struts2的默认拦截器可以起作用, 想了解更多访问https://blog.csdn.net/qq_39905143 使用方案2来解决百度编译器的端口进行过滤 这个方案是非常完美的方案,但由于配置复杂,所以上传了模板包 config.json报错...
该文档是SSH框架为基础实现的BBS论坛。其中有整合好的全面的SSH jar包,BBS前台,后台源码,这个小系统的报告,数据库关系分析等。 以下内容摘自报告目录部分(希望...4.14 根据权限定义拦截器 4.15 测试系统相应的功能
第2篇为表现层框架Struts技术,介绍了Struts2的工作原理、核心文件、数据校验与国际化、标签库、拦截器等。第3篇为持久层框架Hibernate技术,介绍了Hibernate的工作原理、核心文件、核心接口及相关插件的使用方法。...
TP02-Web层框架struts.ppt TP03-Struts2常用标签.ppt TP04-Struts2的Action.ppt TP05-国际化和表单验证.ppt TP06-拦截器.ppt TP07-Hibernate入门.ppt TP08-Hibernate的对象和关系映射.ppt TP09-Hibernate查询.ppt ...
spring 3.2.0+hibernate 4.1.6+struts2整合需要的jar包 的目录 ...文件上传,拦截器,操作的数据库是Mysql, 如果操作的数据库是oracle或者是其他, 将mysql-connector-java-5.1.20-bin.jar 改为相应的驱动包即可。
第2篇为表现层框架Struts技术,介绍了Struts2的工作原理、核心文件、数据校验与国际化、标签库、拦截器等。第3篇为持久层框架Hibernate技术,介绍了Hibernate的工作原理、核心文件、核心接口及相关插件的使用方法。...
目录 ...struts2表单标签 1 1、struts资源文件中文解决...SSH Struts+Spring+Hibernate整合 38 创建WEB工程 39 添加Struts2.1开发支持 39 添加Spring开发支持 39 添加Hibernate支持 40 添加Jar包 42 修改Web.xml文件, 42
该文档是SSH框架为基础实现的BBS论坛。其中有整合好的全面的SSH jar包,BBS前台,后台源码,这个小系统的报告,数据库关系分析等。 以下内容摘自报告目录部分(希望...4.14 根据权限定义拦截器 4.15 测试系统相应的功能
struts hibernate spring 整合开发出来的一个很好的例子,实现了用户登录 注册 注销等功能,把拦截器,事务配置等结合起来实现的
1、Struts2.3.15+Spring4.0.0+hibernate4.2.3整合 2、拦截器实现用户权限检查功能 3、拦截器自动生成日志 4、未登录非法访问页面检测 5、三种方式日志的生成 6、页面访问计数 7、选中页面对应的帮助页面实现 ...