spring2.0 和 spring2.5 的一些小区别
2010-09-05 19:08
转载自 dgdlxh8899
最终编辑 hylvip1987
忙什么呢,项目开发嘛,这次项目有一小部分是直接搬移的以前的项目,应该
说这次项目就是在以前一个项目上来做的,但是,项目中的框架模式都要更新
到最近版本,其中在 spring2.0 升级到 spring2.5 时就出问题了,第一个问题
就是在更换 spring.jar 后,启动项目时,出现
java.lang.ClassNotFoundException:##
org.springframework.web.struts.ContextLoaderPlugIn 错误,其次就是
在 spring2.5 中缺少了一个 JAR:spring-mock.jar。我在 spring2.5 的压缩
包里没有找到这个 JAR,不过发现了 mock 的一个源码文件夹。
其实这两个问题都是 spring2.5 的 jar 包里没有附带这些类,而是单独放在其
它 JAR 里,详细说明如下:
在 Spring 2.5 中, Spring Web MVC 不再是 'spring.jar' 文件的一部分.
Spring MVC 以'spring-webmvc.jar' 和'spring-webmvc-portlet.jar'文件
形式在发行包的 lib/modules 目录中存在。 另外,对 Struts 1.x 的支持被独
立成 'spring-webmvc-struts.jar'。
注意: 经常被使用的 Spring 的 DispatcherServlet 也是 Spring Web MVC 框
架的一部分。 因此,就算你只是为了远程访问(例如,暴露 Hessian 或者
HTTP 调用服务)而使用 DispatcherServlet,你也得将'spring-
webmvc.jar'(或者 'spring-webmvc-portlet/struts.jar')放到'spring.jar'旁
边去。
Spring 2.5 的 'spring-test.jar' 取代了'spring-mock.jar',表达其对 test
context framework 的强烈关注。 注意 'spring-test.jar' 包含了上个版本
'spring-mock.jar'中的一切,因此如果是单元或集成测试,可以直接取代
解决办法:第一个问题是因为我的系统使用的是 Struts1.2,所以还应该加
入'spring-webmvc-struts.jar'包就可以了。第二个问题只要加入'spring-
test.jar' 包就可以了,应该说,还是比较容易解决的,只要我们了解一下
spring2.5 与 2.0 的差别就会知道了。
下面是 spring2.0 与 spring2.5 的差别,摘自其它网页:
移植到 Spring 2.5==升级 Spring 2.5 注意事项 转自:
http://www.javaeye.com/topic/211425