struts2 用Spring实现Ioc

本文详细介绍了如何将Spring IoC容器与Struts2 MVC框架进行整合,包括导入相关jar包、定义服务类和服务上下文配置,以及在web.xml中配置Spring ContextLoaderListener和上下文参数加载应用配置文件。此外,文章还强调了action的prototype作用域,确保每次请求都能获取到新的服务实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.导入jar包

Org.springframework.bean.jar

Org.springframework.context.jar

Org.springframework.core.jar

Org.springframework.web.jar

Org.springframework.asm.jar

Org.springframework.expression.jar

Struts2-sping-plugin.jar

2.定义service类,作为要注入的类

3.定义applictionContext.xml,在Web-Inf目录下,如下

<?xml version="1.0" encoding="UTF-8" ?> 

<beans xmlns ="http://www.springframework.org/schema/beans" 

    xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" 

    xsi:schemaLocation ="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd" > 

    <bean id ="bookService" class ="com.service.SpringIocService" /> 

    <bean id ="bookAction" class ="com.test.action.SpringIocAction" scope ="prototype" > 

        <property name ="bookService" > 

            <ref local ="bookService" /> 

        </property > 

    </bean > 

</beans> 

(注意action的属性scope ="prototype", 表示每次请求都实例化一个新的对象)

4.更改web.xml,加入

 <listener>

     

     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

    </listener>

    <context-param>

     <param-name>contextConfigLocation</param-name>

     <param-value>/WEB-INF/applicationContext.xml</param-value>

    </context-param>

5.在struts.properties中加入struts.objectFactory=spring

6.更改struts.xml文件中的<action>

<action name="" Class="sping配置的beanID">

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值