Spring Web模块

本文详细介绍了如何将Spring与Struts 1.x进行整合,包括继承方式和代理方式,以及如何与Struts 2.x整合。通过Spring管理Struts,可以利用Spring的IOC、AOP特性,降低耦合度,提高灵活性。
摘要由CSDN通过智能技术生成

Spring的Web模块用于整合Web框架,例如Struts1、Struts2、WebWork、JSF等。一个Web程序可能会同时用到多个框架如Struts、Hibernate,多个框架同时工作会增加程序的复杂性。而如果把这些工作交给Spring来统一管理,问题将会简单很多。

如果由Spring统一管理各种框架,由Spring负责实例化,那么Spring就是一个小的容器。框架能够从Spring容器中获取各种资源,包括数据源、DAO对象、Service对象、事务管理者、拦截器等,并能使用Spring的特征如IOC、AOP等,这样程序将会变得相当灵活。这也是Spring框架得到广泛应用的原因。

1 整合Struts 1.x:继承方式

继承org.springframework.web.struts.ActionSupport类

package com.yourcompany.struts.action;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.springframework.web.struts.ActionSupport;

import interf.IPersonDAO;
public class PersonAction extends ActionSupport {    //ActionSupport在Spring3.0以上被抛弃可用spring-webmvc-struts.jar
        public IPersonDAO getPersonService(){
            return (IPersonDAO) getWebApplicationContext().getBean("IPersonDAO");
        }

        public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
                    HttpServletResponse response) throws IOException {
                PersonForm personForm = (PersonForm) form;
                IPersonDAO dao=getPersonService();

                //Write some code to handle the business.
                //dao.dosome();
                return null;
        }
}

Struts配置文件

和普通Struts 1.x配置文件一样,不需要特别编写代码

		<action 
			attribute="personForm" 
			input="/form/person.jsp" 
			name="personForm"
			path="/person" 
			scope="request" 
			type="com.yourcompany.struts.action.PersonAction">
			<set-property property="cancellable" value="true" />
			<forward name="list" path="/WEB-INF/project/listPerson.jsp"></forward>
		</action>

在web.xml中配置Spring和Struts 1.x

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://xml
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值