`
Aga
  • 浏览: 214166 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

struts 与spring整合关键点

阅读更多
断断续续的学习spring又一个月了,领略到了一些其中的要点。几天成功的把spring2.0+hibernate3.0+struts1.2整合到了一起。尤其是在最后整合spring+struts遇到了问题,从网络中找到了整合方法,但太啰嗦,而且各种没有必要的代码也混在了一起。所以我自己写一个spring2+struts1.2整合的方式。

struts-config.xml中<action>标签中的元素需要重新配置
尤其需要注意:type的变化!
	<action attribute="transferForm" input="jsps/Input.jsp"
		name="transferForm" path="/transfer" scope="request"
		type="org.springframework.web.struts.DelegatingActionProxy">
		<forward name="failed" path="/jsps/TransferFailed.jsp" />
		<forward name="success" path="/jsps/TransferSuccess.jsp" />
	</action>


struts-config.xml中的加入<plug-in>元素
	<plug-in
		className="org.springframework.web.struts.ContextLoaderPlugIn">
		<set-property property="contextConfigLocation"
			value="/WEB-INF/applicationContext.xml" />
	</plug-in>


applicationContext.xml中利用代理生成action对象
	<bean name="/transfer" class="com.cxz.bank.action.TransferAction">
		<property name="accountService" ref="accountService"/>
	</bean>

其中accountService是自己的服务逻辑,当然,需要在对应的action中配置好对应的accountService变量,以及该变量的setter方法。关键代码如下:
public class TransferAction extends Action {

	private AccountService accountService = null;

	public void setAccountService(AccountService accountService) {
		this.accountService = accountService;
	}

	public ActionForward execute(ActionMapping mapping, ActionForm form,
		//使用改服务类,进行业务逻辑的操作。
		return null;
	}
}

其他方面的struts使用习惯,完全可以保持不变,现在我可以理解为什么说spring的主要作用是解藕,还有那种组件。如果有必要,完全可以把struts的表示层换成其他的框架。而且持久层也很方便的就可以更换,很类似一堆可以任意组合的插件。

当然,以上列出的方法只是整合方法之一,也是我自己动手实践了的~~
7
0
分享到:
评论
2 楼 wqy 2008-03-10  
我自己动手实
1 楼 clasp 2008-03-09  
加油!~~~~~~~~

相关推荐

    Spring 2.0 开发参考手册

    17. 使用Spring进行远程访问与Web服务 17.1. 简介 17.2. 使用RMI暴露服务 17.2.1. 使用 RmiServiceExporter 暴露服务 17.2.2. 在客户端链接服务 17.3. 使用Hessian或者Burlap通过HTTP远程调用服务 17.3.1. 为...

    Spring-Reference_zh_CN(Spring中文参考手册)

    7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点实施 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入点实现 7.2.4.1. 静态切入点 7.2.4.2. 动态切入点 7.2.5. 切入点的基类 7.2.6. 自定义切入点 7.3. Spring的...

    Spring中文帮助文档

    7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入点实现 7.2.5. 切入点的超类 7.2.6. 自定义切入点 7.3. Spring的通知API 7.3.1. 通知的生命周期 ...

    spring chm文档

    17. 使用Spring进行远程访问与Web服务 17.1. 简介 17.2. 使用RMI暴露服务 17.2.1. 使用 RmiServiceExporter 暴露服务 17.2.2. 在客户端链接服务 17.3. 使用Hessian或者Burlap通过HTTP远程调用服务 17.3.1. 为...

    Spring API

    7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入点实现 7.2.5. 切入点的超类 7.2.6. 自定义切入点 7.3. Spring的通知API 7.3.1. 通知的生命周期 ...

    java面试宝典

    231、Java语言的11个关键特性. 54 232、说出Servlet的生命周期,并说出Servlet和CGI的区别。 55 233、说出在JSP页面里是怎么分页的? 55 234、存储过程和函数的区别 55 235、事务是什么? 55 236、游标的作用?如何...

    千方百计笔试题大全

    105、spring工作机制及为什么要用? 24 106、HttpSession session = request.getSession() 24 107、getParameter与 getAttribute的区别? 24 108、以下哪一个不是赋值符号? 25 109、以下哪个不是Collection的子接口?...

    freemarker总结

    在表达式中使用算术运算符时要注意以下几点: 1,运算符两边的运算数字必须是数字 2,使用+运算符时,如果一边是数字,一边是字符串,就会自动将数字转换为字符串再连接,如:${3 + "5"},结果是:35 使用内建的int函数可...

Global site tag (gtag.js) - Google Analytics