`
fanjf
  • 浏览: 329656 次
  • 性别: Icon_minigender_1
  • 来自: 安徽
社区版块
存档分类
最新评论

spring+struts的集成

    博客分类:
  • SSH
 
阅读更多

spring+struts的集成(第一种集成方案)
原理:在Action中取得BeanFactory对象,然后通过BeanFactory获取业务逻辑对象

1、spring和struts依赖库配置
    * 配置struts
        --拷贝struts类库和jstl类库
        --修改web.xml文件来配置ActionServlet
        --提供struts-config.xml文件
        --提供国际化资源文件
    * 配置spring
        --拷贝spring类库
        --提供spring配置文件
       
2、在struts的Action中调用如下代码取得BeanFactory
    BeanFactory factory = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getSession().getServletContext());

3、通过BeanFactory取得业务对象,调用业务逻辑方法        

 

 

spring+struts的集成(第二种集成方案)
原理:将业务逻辑对象通过spring注入到Action中,从而避免了在Action类中的直接代码查询

1、spring和struts依赖库配置
    * 配置struts
        --拷贝struts类库和jstl类库
        --修改web.xml文件来配置ActionServlet
        --提供struts-config.xml文件
        --提供国际化资源文件
    * 配置spring
        --拷贝spring类库
        --提供spring配置文件
2、因为Action需要调用业务逻辑方法,所以需要在Action中提供setter方法,让spring将业务逻辑对象注入过来

3、在struts-config.xml文件中配置Action
    * <action>标签中的type属性需要修改为org.springframework.web.struts.DelegatingActionProxy
     DelegatingActionProxy是一个Action,主要作用是取得BeanFactory,然后根据<action>中的path属性值
     到IoC容器中取得本次请求对应的Action
    
4、在spring配置文件中需要定义struts的Action,如:
    <bean name="/login" class="com.bjsxt.usermgr.actions.LoginAction" scope="prototype">
        <property name="userManager" ref="userManager"/>
    </bean>
    * 必须使用name属性,name属性值必须和struts-config.xml文件中<action>标签的path属性值一致
    * 必须注入业务逻辑对象
    * 建议将scope设置为prototype,这样就避免了struts Action的线程安全问题
               
       

分享到:
评论

相关推荐

    intellij环境下maven项目spring+struts集成空模板

    为了方便大家开发,特意制作了intellij环境下maven项目spring+struts集成空模板。直接导入intellij就可以用,模板下有个简单的小例子。对于学习spring+struts集成、以及希望快速开发的人来说都是不错的资源

    spring+struts集成学习笔记和项目源码

    在提供的"spring+struts集成学习笔记和项目源码"中,你将有机会深入理解这些概念,通过实际操作来学习如何将Spring的优秀特性与Struts的高效处理机制结合起来,构建出高效稳定的Web应用。源码分析和实践操作是加深...

    基于注解的Spring+Struts2+Mybatis+Maven项目

    【基于注解的Spring+Struts2+Mybatis+Maven项目详解】 在现代Web开发中,Spring、Struts2、Mybatis和Maven是四个非常重要的组件,它们各自负责不同的职责,共同构建了一个高效、灵活且易于维护的Java Web应用。这个...

    图书管理系统spring+struts+hibernate

    《图书管理系统spring+struts+hibernate》是一款基于Java技术栈开发的图书管理软件,其核心框架包括Spring、...对于学习和理解Java Web开发,特别是Spring、Struts和Hibernate的集成应用,这是一个很好的实践案例。

    Spring+Struts2+hibernate+Redis整合

    通过Action类和拦截器,可以实现与Spring的无缝集成,同时也可以利用Spring的缓存功能,将频繁访问的数据存储在Redis中。 3. **Hibernate框架**:Hibernate是Java领域的一个对象关系映射(ORM)框架,它简化了数据库...

    ssh框架整合详细步骤(spring+struts2+hibernate)

    **Step10:Struts2与Spring的集成** - 在`struts.xml`中,将Action的Class属性修改为Spring的Bean名称,利用Spring的IOC特性实现Action的实例化和依赖注入。 ##### 第三部分:Hibernate与Spring进行整合 **Step11...

    CXF2.1.3+spring3.0+struts2.3.4

    【标题】"CXF2.1.3+spring3.0+struts2.3.4" 描述了集成这三大框架实现Web服务的场景。CXF是一个开源的服务框架,它允许开发人员创建和消费各种Web服务。Spring是Java企业级应用的核心框架,提供了依赖注入和面向切面...

    Jpa+Spring+Struts集成步骤详解

    下面,我们将详细介绍如何进行Jpa、Spring和Struts的集成。 1. 集成JPA环境步骤: JPA是Java标准的ORM(对象关系映射)规范,它提供了一种在Java应用程序中操作数据库的方式。首先,我们需要在项目中引入JPA的依赖...

    spring+struts+ibatis

    此外,还需要设置好数据源、事务管理器以及各框架之间的集成点,如使用Spring的DelegatingFilterProxy实现Struts2的过滤器配置。 总的来说,"spring+struts+ibatis"是一个成熟的Java Web开发解决方案,它提供了良好...

    spring +struts + hibernate 例子

    Spring、Struts和Hibernate是Java开发中非常经典的三大框架,它们分别在不同的层面上解决了Web应用中的各种问题。Spring作为一款全面的后端框架,提供了依赖注入、AOP(面向切面编程)、事务管理等功能;Struts则...

    spring+struts2+mybatis实例

    综上所述,这个实例项目展示了如何在Java Web环境中集成Spring、Struts2和MyBatis框架,通过Struts2的拦截器实现特定业务逻辑,利用Log4j进行日志记录,以及Spring如何管理整个应用程序的生命周期和数据访问。...

    Spring+Struts2+JPA

    **Spring+Struts2+JPA 整合详解** 在Java Web开发中,Spring、Struts2和JPA是三个非常重要的框架。Spring作为一个全面的轻量级框架,提供了依赖注入(DI)和面向切面编程(AOP)等功能;Struts2是一个强大的MVC框架...

    Spring+Struts2+MyBatis完整框架

    Struts2与Spring的集成使得我们可以利用Spring的IoC容器管理Struts2中的Action类,进一步降低了耦合度。 MyBatis是一个持久层框架,它简化了SQL操作,将SQL语句与Java代码分离,提供了映射框架,使得开发者可以直接...

    hibernate+spring+struts一个简单例子

    Spring还包含许多模块,如Spring JDBC、Spring ORM(支持Hibernate等ORM工具)、Spring MVC等,可以方便地集成其他框架。 3. **Struts**:是基于MVC(Model-View-Controller)设计模式的Web应用框架,主要用于处理...

    spring+struts1+hibernate+jbpm实例

    它可以定义、执行和监控复杂的业务流程,并且与Spring和其他Java框架有很好的集成。在这个实例中,jbpm-demo可能包含了一个具体的业务流程示例,展示了如何使用JBPM来定义和执行一个流程,比如员工请假审批流程。 ...

    Spring+struts+hibernate经典注册

    Spring、Struts和Hibernate是Java开发中的三大框架,它们各自负责不同的职责,组合起来可以构建出功能强大且架构清晰的企业级应用。在这个“Spring+Struts+Hibernate经典注册”项目中,我们将深入探讨这三个框架如何...

    自己的spring+struts2+mybatis Demo

    标题 "自己的spring+struts2+mybatis Demo" 暗示了这是一个使用Spring、Struts2和MyBatis三个框架构建的Web应用程序示例。这个项目可能是为了教学或者实践目的,展示了如何将这三个流行的技术集成在一起以创建一个...

    Spring+Struts2+iBatis简要说明

    Spring还提供了与iBatis的集成,使得事务管理和DAO层的数据库操作得以统一管理。 Struts2是MVC模式的具体实现,主要处理HTTP请求和响应,控制业务逻辑的流转。通过`struts-config-XXX.xml`配置文件,开发者可以定义...

    Spring+Struts2+Hibernate三大框架开发校园精品课程网源代码

    此外,Spring还提供了与Hibernate的集成,简化了数据访问层的开发。 2. Struts2框架:Struts2是一款基于MVC(Model-View-Controller)设计模式的Web框架,用于处理HTTP请求并将其转发到相应的业务逻辑。在本项目中...

    spring+struts2+mybatis整合

    5. **集成MyBatis与Spring**:使用Spring的SqlSessionTemplate或SqlSessionDaoSupport来使MyBatis与Spring容器集成,这样可以从Spring管理的Bean中直接调用MyBatis的Mapper接口。 6. **编写业务逻辑**:在Spring...

Global site tag (gtag.js) - Google Analytics