一、Spring3
结构图:
从上图可以看出:Spring核心框架结构分为Test、Core、AOP、Data Access和Web五个部分。
下面详细分析各个部分所需jar包。
1、Core
core部分包含4个模块:
spring-core:依赖注入IOC和DI的最基本实现;
spring-beans:Bean工厂和bean的装配;
spring-text:spring的context上下文,即Ioc容器;
spring-expression:spring的表达语言
它们的依赖关系:
从上图可看出各个模块都依赖spring-core,而spring-core依赖commons-logging,所以除非有其他日志实现(如log4j),否则必须实现commons-logging,不然会编译报错。
2、AOP
1、spring-aop:面向切面编程;
2、spring-aspects:集成AspectJ;
3、spring-instrument:提供一些类级的工具及ClassLoader级的实现;
4、spring-instrument-tomcat:针对tomcat的instrument实现。
它们的依赖关系:
3、Data Access
1、spring-jdbc:jdbc的支持;
2、spring-tx:事务控制;
3、spring-orm:对象关系映射,集成orm框架;
4、spring-oxm:对象xml映射;
5、spring-jms:java消息服务;
它们的依赖关系:
4、Web
1、spring-web:基础web功能,如图片上传;
2、spring-webmvc:mvc实现;
3、spring-webmvc-portlet:基于portlet的mvc实现;
4、spring-struts:与struts的集成(spring4移除)。
它们的依赖关系:
5、Text
1、spring-text:spring测试,提供junit与mock测试功能;
2、spring-context-support:spring额外支持包,如邮件服务、视图解析等。
它们的依赖关系:
二、spring4
结构图:
spring4有20个jar,去掉了struts。并新增websocket和messaging:
1、spring-websocket:为web应用提供的高效通信工具;
2、spring-messaging:用于构建基于信息的应用程序;
它们的依赖关系:
以上。