`
scorpiomiracle
  • 浏览: 260095 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

SSH整合系列2--在Struts2.1.8.1中整合Spring3.0.3

阅读更多
由于Spring3.0的版本与以前的版本是一个重大的分割点。所以有很多变化,这里仅仅阐述整合的方法,不研究其新的使用方法。

1.引入spring的jar包
2.创建Spring的配置文件
3.整合Struts2和Spring3.0
 3.1.Usage(使用),配置目标工厂为Spring。
 3.2.Autowiring(自动装配),配置监听器


1.引入spring的必需 jar包
将\dist文件夹下所有jar包复制到lib文件夹下。
由于3.0版本和以前的版本有很大的不同,包结构也不一样,不会再提供spring.jar这个完整包了,由于没有查到哪些包是必须的,测试一些包后也依然报错,就暂时将其全部考进来了 -_-

2.创建Spring的配置文件
Spring的org.springframework.web.context.ContextLoaderListener监听器默认读取的是WEB-INF目录下的applicationContext.xml。
如果需要加载其它配置文件,或者放在了其它路径,则需要在web.xml中进行如下配置:
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext*.xml,classpath*:applicationContext-*.xml</param-value>
</context-param>

说明:
a.这部分代码来自Apache官网Struts项目的Documentation。在Struts项目的首页点击Documentation下Struts的最新版本,然后就会出现三个巨大的按钮,Download Now,Get Started,Plugin Registry,其中Get Started会教你如何使用Struts,而Plugin Registry则会教你如何注册各种插件。点击进入后就会在Plugins栏目中看到在struts中使用各种插件方法的超链接,点击Spring Plugin进入使用spring的说明页面,点击链接后就会看到使用的详细的方法。----这是一个好的学习技巧。
b.上面的classpath就是.java文件编译成的.class文件所在的位置,即/WEB-INF/classes文件夹。另外,写上.xml文件的全称也可以啊。
其实,可以从Struts2源码包的例子工程中拷贝一份applicationContext.xml放到WEB-INF目录下,然后只留下文件头就可以了,主要就是DTD。

3.整合Struts2和Spring3.0
本方法依然取自Apache网站,更加详细的说明请参见Apache网站。
3.1.Usage(使用):
引入struts提供的包struts2-spring-plugin-xxx.jar即可。
如果使用了多个object factory,还必须进行如下配置:
由于struts同时支持.properties和.xml配置文件,选择其一即可。
struts.properties:
struts.objectFactory = org.apache.struts2.spring.StrutsSpringObjectFactory

struts.xml:
<struts>
<constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" />
  ... 
</struts>

3.2.Autowiring(自动装配):
在web.xml配置spring的监听器。
<listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

这一监听器主要是提供spring的自动装配功能,默认是依靠名字自动装配,可以在<bean>或<beans>标签中更改default-autowire属性,一般就是byName。此外也可以在struts.properties中作为整体配置修改struts.objectFactory.spring.autoWire = name/type/auto/constructor。



分享到:
评论
1 楼 xyzroundo 2010-04-02  
 

相关推荐

    linux环境vsftpd安装包-vsftpd-3.0.3-32.el8.aarch64.rpm

    linux环境vsftpd安装包-vsftpd-3.0.3-32.el8.aarch64.rpm

    thymeleaf-spring4-3.0.3.RELEASE-API文档-中文版.zip

    赠送jar包:thymeleaf-spring4-3.0.3.RELEASE.jar; 赠送原API文档:thymeleaf-spring4-3.0.3.RELEASE-javadoc.jar; 赠送源代码:thymeleaf-spring4-3.0.3.RELEASE-sources.jar; 包含翻译后的API文档:...

    apache-maven-3.0.3-bin.tar.gz

    Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而...apache-maven-3.0.3-bin.tar.gz

    vsftpd-3.0.3-34.el8.x86_64.rpm

    官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装

    jakarta.el-3.0.3-API文档-中文版.zip

    赠送原API文档:jakarta.el-3.0.3-javadoc.jar; 赠送源代码:jakarta.el-3.0.3-sources.jar; 赠送Maven依赖信息文件:jakarta.el-3.0.3.pom; 包含翻译后的API文档:jakarta.el-3.0.3-javadoc-API文档-中文(简体)...

    vsftpd-3.0.3-33.el8.x86_64.rpm

    FTP服务器安装软件,使用RPM命令进行安装即可

    thymeleaf-spring4-3.0.3.RELEASE-API文档-中英对照版.zip

    赠送jar包:thymeleaf-spring4-3.0.3.RELEASE.jar; 赠送原API文档:thymeleaf-spring4-3.0.3.RELEASE-javadoc.jar; 赠送源代码:thymeleaf-spring4-3.0.3.RELEASE-sources.jar; 包含翻译后的API文档:...

    vsftpd-3.0.3-edit.tar.gz.tar

    (2)错误提示:/lib/libcap.so.2:could not read symbols: File in wrong format 解决措施:修改vsffindlibs.sh,屏蔽掉50-60行 (3)错误提示:sysdeputil.c:(.text+0xdcc):undefined reference to `crypt' 解决措施:...

    unlocker-3.0.3-with-macos-带说明.zip

    2.复制unlocker-3.0.3-with-macos/tools文件夹的两个东西到vmware的安装目录下,包括 darwin.iso darwinPre15.iso 3.关掉vmware软件 4.桌面计算机 右键,管理,服务,停止所有的vmware服务(最少4个vmware开头的)...

    thymeleaf-3.0.3.RELEASE-API文档-中文版.zip

    赠送jar包:thymeleaf-3.0.3.RELEASE.jar; 赠送原API文档:thymeleaf-3.0.3.RELEASE-javadoc.jar; 赠送源代码:thymeleaf-3.0.3.RELEASE-sources.jar; 包含翻译后的API文档:thymeleaf-3.0.3.RELEASE-javadoc-...

    J2EE项目开发常用Jar包.zip

    org.springframework.web.struts-3.0.3.RELEASE.jar org.springframework.aop-3.0.3.RELEASE.jar org.springframework.asm-3.0.3.RELEASE.jar org.springframework.aspects-3.0.3.RELEASE.jar org.spring...

    jakarta.el-3.0.3-API文档-中英对照版.zip

    赠送原API文档:jakarta.el-3.0.3-javadoc.jar; 赠送源代码:jakarta.el-3.0.3-sources.jar; 赠送Maven依赖信息文件:jakarta.el-3.0.3.pom; 包含翻译后的API文档:jakarta.el-3.0.3-javadoc-API文档-中文(简体)-...

    scala-intellij-bin-2016.3.9

    IntellJIDEA Scala插件:scala-intellij-bin-2016.3.9

    neethi-3.0.3-API文档-中文版.zip

    赠送原API文档:neethi-3.0.3-javadoc.jar; 赠送源代码:neethi-3.0.3-sources.jar; 赠送Maven依赖信息文件:neethi-3.0.3.pom; 包含翻译后的API文档:neethi-3.0.3-javadoc-API文档-中文(简体)版.zip; Maven...

    kryo-shaded-3.0.3-API文档-中文版.zip

    赠送原API文档:kryo-shaded-3.0.3-javadoc.jar; 赠送源代码:kryo-shaded-3.0.3-sources.jar; 赠送Maven依赖信息文件:kryo-shaded-3.0.3.pom; 包含翻译后的API文档:kryo-shaded-3.0.3-javadoc-API文档-中文...

    J2EE项目开发常用Jar包源代码-src.zip

    J2EE项目开发常用Jar包源代码-src.zip aopalliance-1.0-sources.jar ...commons-digester3-3.0-sources.jar commons-fileupload-1.2.2-sources.jar ...spring-security-web-3.0.3.RELEASE-sources.jar

    vsftpd-3.0.3.tar.gz

    da119d084bd3f98664636ea05b5bb398 vsftpd-3.0.3.tar.gz

    spring-boot-starter-web-3.0.3.jar

    spring-boot-starter-web-1.0.0.RELEASE.jar 各个版本,免费下载 spring-boot-starter-web.RELEASE.jar 各个版本,免费下载 spring-boot-starter-web.jar 各个版本,免费下载 如果不能免费下载,关注我,评论区联系...

    apache-maven-3.0.3.zip

    apache-maven-3.0.3.zipapache-maven-3.0.3.zipapache-maven-3.0.3.zip

    PyPI 官网下载 | django-user-accounts-3.0.3.tar.gz

    资源来自pypi官网。 资源全名:django-user-accounts-3.0.3.tar.gz

Global site tag (gtag.js) - Google Analytics