`
Supanccy2013
  • 浏览: 222886 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

ssh整合后 struts拦截器不起作用

    博客分类:
  • SSH
ssh 
阅读更多
    解决方法:把拦截器配置到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整合包含struts1和struts2

    **Struts2** 是一个基于MVC(Model-View-Controller)设计模式的开源Web应用框架,主要用于控制应用的流程,提供了丰富的拦截器和结果类型,使得开发者可以方便地处理HTTP请求和响应。Struts2的核心是Action类,它...

    SSH整合 Struts2.1+Spring4.1+Hibernate4.1

    SSH整合是指将Struts2、Spring和Hibernate这三个流行的开源Java框架集成在一起,以构建高效、模块化的企业级Web应用程序。这个“SSH整合 Struts2.1+Spring4.1+Hibernate4.1”是一个预配置的框架模板,适用于快速开发...

    SSH整合(Struts2.0)登录实例

    SSH整合,全称为Struts2、Spring和Hibernate的集成,是Java Web开发中常见的三大框架组合,用于构建高效、可维护的Web应用。这个“SSH整合(Struts2.0)登录实例”提供了如何在Struts2.0框架下实现用户登录功能的...

    SSH整合(struts 2.2.1,hibernate 3.5.2,spring 3.0.5)

    SSH整合完成后,开发人员可以通过Struts 2处理用户请求,Spring负责管理对象和事务,而Hibernate则完成数据的持久化。这种三层架构使得开发者可以更专注地处理各自领域的任务,提升开发效率,同时也为项目的维护和...

    SSH整合Jar包

    配置文件的头部通常包括Struts的基本配置元素,如数据源、拦截器栈等,尽管这里没有具体内容,但理解其结构对于调试和扩展应用程序是必要的。 再者,Hibernate作为对象关系映射(ORM)工具,简化了Java应用与数据库...

    ssh整合jar包(包括struts1.2)

    然而,由于Struts1.2相对较旧,可能缺乏一些现代框架的特性,例如Action的注解配置、更强大的拦截器等。在新的项目中,开发者可能会选择更新的SSH版本,如Struts2和Spring Boot结合Hibernate的解决方案。 总之,这...

    SSH(struts2,Hibernate,Spring)整合及测试亲测可用

    **Struts2** 是一个基于MVC设计模式的Web应用框架,它在Struts1的基础上进行了大量的改进和增强,提供了更强大的动作拦截器、更加灵活的配置方式以及对AJAX的良好支持。Struts2的核心是Action类,它是业务逻辑的载体...

    SSH整合(Struts2 Hibernate3 Spring2)

    Spring还集成了其他功能,如Spring MVC(Web层)、Spring JDBC和Spring ORM(数据访问层),在SSH整合中,Spring起到了粘合剂的作用,管理整个应用的生命周期和各个组件的协作。 在这个整合项目中,开发者已经实现...

    SSH 整合实例 struts+spring+hibernate

    Struts2提供了强大的拦截器机制,可以进行权限验证、数据校验等操作。在这个实例中,我们可能会看到Action类和配置文件(struts.xml)的定义,Action类会处理用户的登录和注册请求。 **Spring** 是一个全面的Java...

    ssh整合_struts2.3.24_spring4.2.2_hib5.0.2

    Struts2.3.24版本引入了更多的增强功能和性能优化,例如更强大的拦截器链,更好的类型转换支持以及对RESTful风格的支持。 Spring框架的核心是依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented...

    SSH整合 struts+hibernate+spring

    ### SSH整合 struts+hibernate+spring #### 一、SSH整合概述 在软件开发领域,特别是Java Web开发中,Struts、Spring 和 Hibernate 被广泛地应用于构建复杂的应用程序。这三大框架各有所长,分别在不同的层面发挥...

    ssh整合jar (struts2)

    SSH整合是指将Struts2、Spring和Hibernate这三个开源框架整合在一起,用于构建高效、模块化的企业级Java Web应用。这个压缩包"ssh整合jar (struts2)"显然是为了帮助初学者整理和理解这些框架的集成过程,提供了一个...

    SSH整合jar包-spring5.0+hibernate5.1+struts2.5

    SSH整合是指将Spring、Hibernate和Struts这三大Java开源框架集成在一起,用于构建高效、灵活的企业级Web应用程序。这三个框架分别负责不同的职责:Spring作为应用的基石,提供依赖注入(DI)和面向切面编程(AOP),...

    ssh整合所需所有架包

    Struts2的优势在于其可扩展性,可以方便地添加自定义拦截器和插件来满足各种需求。 **Spring** 是一个全面的后端应用程序框架,提供依赖注入(DI)和面向切面编程(AOP),以简化Java企业级应用的开发。Spring的...

    ssh整合jar包

    Struts2的核心jar包包括`struts2-core.jar`,它包含了Action、拦截器、结果类型等核心组件。同时,可能还有其他相关的扩展包,如`struts2-convention-plugin.jar`用于约定优于配置的插件,`struts2-json-plugin.jar`...

    SSH整合(Struts2Hibernate3Spring3)

    1. 配置Struts2:添加Struts2的依赖,配置struts.xml文件以定义Action、拦截器和结果类型。 2. 集成Hibernate:导入Hibernate库,配置hibernate.cfg.xml文件,定义实体类和映射文件,创建SessionFactory。 3. 配置...

    struts 2 ssh 整合

    1. **配置 Struts 2**:在 `struts.xml` 文件中定义Action和结果,设置拦截器栈,确保Struts 2能够正确处理请求。 2. **集成 Spring**:在Struts 2中使用Spring的依赖注入,需要在 `struts-plugin.xml` 中配置...

    ssh 整合 struts2 jar

    SSH(Spring、Struts2、Hibernate)是一种常见的Java企业级应用开发框架组合,它整合了MVC模式的Struts2、轻量级IoC容器的Spring以及持久层框架Hibernate。在本项目中,我们将探讨如何将Struts2的核心库与SSH中的...

    ssh整合(struts2+hibernate3+spring3)

    ### SSH整合:Struts2 + Hibernate3 + Spring3 SSH框架整合是指将Spring、Struts2和Hibernate三个流行的企业级Java框架结合在一起,构建出一个高效、可扩展、易维护的Web应用程序架构。这种整合充分利用了每个框架...

Global site tag (gtag.js) - Google Analytics