- 浏览: 1594498 次
- 性别:
文章分类
- 全部博客 (2929)
- 非技术 (18)
- Eclipse (11)
- JAVA (31)
- 正则表达式 (0)
- J2EE (4)
- DOS命令 (2)
- WEB前端 (52)
- JavaScript (69)
- 数据库 (8)
- 设计模式 (0)
- JFreechart (1)
- 操作系统 (1)
- 互联网 (10)
- EasyMock (1)
- jQuery (5)
- Struts2 (12)
- Spring (24)
- 浏览器 (16)
- OGNL (1)
- WebService (12)
- OSGi (14)
- 软件 (10)
- Tomcat (2)
- Ext (3)
- SiteMesh (2)
- 开源软件 (2)
- Hibernate (2)
- Quartz (6)
- iBatis (2)
最新评论
在Struts2中整合Spring的IoC支持是一件十分简单的事情。让我们一步一步来实现:
1)复制struts2-spring-plugin-x-x-x.jar和相应的spring.jar到/WEB-INF/lib目录下。
2)在struts.properties中设置struts.objectFactory属性值
struts.properties
struts.objectFactory = spring
或者是在XML文件中进行常量配置
struts.xml
<struts> <constant name="struts.objectFactory" value="spring" /> </struts>
3)配置Spring监听器
web.xml
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
通过Spring配置来注册对象
applicationContext.xml
<?xml version="1.0"
encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC
"-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans default-autowire="byName">
<bean id="personManager" class="com.acme.PersonManager"/>
</beans>
当然你也可以拥有更多的Spring配置文件。在web.xml中进行下列设置,从而使Spring的ApplicationContext通过匹配所给定模式的文件来初始化对象
<!-- 用来定位Spring XML文件的上下文配置 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml</param-value>
</context-param>
4)修改你的Struts配置文件
struts.xml
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <include file="struts-default.xml"/> <package name="default" extends="struts-default"> <action name="foo" class="com.acme.Foo"> <result>foo.ftl</result> </action> </package> <package name="secure" namespace="/secure" extends="default"> <action name="bar" class="bar"> <result>bar.ftl</result> </action> </package> </struts>
默认情况下,Spring从下面的文件中寻找为bar所做的配置
applicationConext.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans default-autowire="byName"> <bean id="bar" class="com.my.BarClass" singleton="false"/> ... </beans>
5)好了,现在你的Struts2和Spring就能正常的一起工作了。有几个配置技术点需要详细说明下:装配模式。你可以通过设置修改struts.properties中下列属性的值来改变装配模式。
struts.objectFactory.spring.autoWire = type
该参数可供选择的设置值有
按照你的action的属性的名字和Spring里的bean的名字匹配,如果匹配就自动装配。这是缺省的 |
按照你的action的属性的类型,在Spring注册的bean中查找,如果相同就自动装配。这需要你在Spring中仅注册了一个此类型的bean |
Spring会试图自动监测来找到最好的方法自动装配你的action |
Spring会自动装配bean的构造函数的参数 |
是否使用类缓存。你可以通过设置修改struts.properties中下列属性的值来改变是否使用Spring自身的类缓存机制。可以设定的值为true或false,默认为true。
struts.objectFactory.spring.useClassCache = false
发表评论
-
spring2.0和spring2.5及以上版本的jar包区别 spring jar 包详解
2009-07-22 15:07 809spring jar 包详解 spr ... -
spring2.0升级到spring2.5
2009-07-22 15:09 822在spring2.0升级到spring2. ... -
spring2.5新特性(转)
2009-07-22 15:10 679简介 从诞生之初,Spring框架就坚守它的宗旨:简化企 ... -
Spring中使用FreeMaker或Vilocity模板发送邮件
2009-07-22 16:38 873本文以用户注册后为用户发送一封邮件为例子,讲述如何在Sprin ... -
Quartz与Spring的集成【转】
2009-08-05 15:21 7952.1 Scheduler 总入口 <bean n ... -
Quartz在Spring中动态设置cronExpression研究(spring设置动态定时任务)【转】
2009-08-05 15:49 848什么是动态定时任务:是由客户制定生成的,服务端只知道该 ... -
Spring结合Quartz实现多任务定时调用
2009-08-05 15:51 749Quartz框架提供了丰富的任务调度支持,比如 ... -
在Spring中使用Quartz进行任务调度
2009-08-06 10:30 851概述 各种企业应用几乎都会碰到任务调度的需求,就拿论坛 ... -
spring&quartz的项目应用总结
2009-08-06 12:20 867一.名词简介: Quartz是一个完全由java编写的开源作 ... -
Spring的transactionAttributes
2009-08-11 11:42 602PROPAGATION_REQUIRED--支持当前事务, ... -
Spring配置中transactionAttributes的意义
2009-08-11 11:43 814最近使用JSF+Spring+OpenJPA ... -
详解spring事务属性
2009-08-11 11:45 651Spring声明式事务让我们从复杂的事务处理中得到解脱。使得我 ... -
acegi参考的部分翻译
2009-08-20 15:34 640序 1. 安全 1.1 准备 1 ... -
Acegi Security -- Spring下最优秀的安全系统
2009-08-20 15:40 797一Acegi安全系统介绍 Author: cac 差沙 ... -
【SSI开发总结.2】spring整合ibatis
2009-08-20 15:48 5981.Spring 配置文件: ... -
【SSI开发总结.5】SiteMesh装饰器
2009-08-20 15:49 645SiteMesh项目简介 OS(OpenSymph ... -
【SSI开发总结.4】Spring中使用Acegi安全框架
2009-08-20 15:49 682Acegi认证授权主要基于 ... -
【SSI开发总结.3】基于ibatis的自定义分页
2009-08-20 15:49 790分页,在web应用程序中非常常见的功能,也是最基本的功能, ... -
【SSI开发总结.7】Struts+Spring+Ibatis环境配置(二)
2009-08-20 15:50 602spring提供了ibatis的模板类封装,通过简单的设置就能 ... -
【SSI开发总结.6】Struts+Spring+Ibatis环境配置(一)
2009-08-20 15:50 751为了使struts2和spring集成,必须下载一个 ...
相关推荐
MyEclispse下SSI整合JAR包(Struts1+Spring3+ibatis2)
struts2+ibatis2.x+spring2.5整合的一个demo 适合新手学习
ssi_struts2_spring_ibatis oracle数据库.增删改查分页 示例.有简单页面.好资料.!
Struts2+Spring+iBatis整合的一个小例子。 包括了对MySQL数据库的增删改查,只适用于新手,使用时请先把ssi.sql文件导入数据库。 压缩包内有源码和所需jar包
struts2+spring+ibatis整合加用户增加改查操作,包括所有需要的包
struts+spring+maven+mybatis的整合,里面的图片是需要整合的oracle数据库,若有什么问题请联系我
Struts2+Spring+Mybaits3框架整合实例
IBatis+struts2+spring+mysql整合增删改查
struts2 + spring2.5 + ibatis2.3.4整合包文件,包括了SSI框架整合开发所需的全部文件
SSI框架整合(Struts2.1+Spring3.0+Ibatis 2.3) 下载之后执行.sql文件创建表和sequence 记得改数据库访问地址以及数据库登录用户名密码 项目访问路径 localhost:8080/SSI_Demo1 一个简单的例子(Oracle数据库增删改查...
struts2+spring+ibatis做的增删改查的小例子 struts2+spring+ibatis SSI2整合 struts2+spring+ibatis增删改查 对初学者很有为、用
NULL 博文链接:https://314649444.iteye.com/blog/1894708
ssi2整合步骤,框架的整合开发文档,web开发技术,struts2,spring,I
struts2+ibatis+spring整合开发 ibaits struts2 spring 整合
SSI框架搭建实例教程(struts spring ibatis整合 附切面事物处理)
SSI框架整合 开发工具: MyEclipse8.5 框架版本: struts2、spring2.5、ibatis
整合的struts2 spring myibatis easyUI基础框架 1.myibatis 的分页 2.异常处理机制 3.logback日记整合 4.oracle agile 整合(不需要agile,可以直接删除代码) 5.其他一些小东西的整合和整理 6.项目中有详细的注解
SSi(Struts2+Spring+iBatis)三种框架的整合实现文件上传下载功能,很实用,支持多文件上传功能,对你的学习很有帮助,数据库导入就能实现功能
SSI框架整合实战成果 struts2+spring2+ibatis
SSI即Struts+Spring+Ibatis整合开发框架