想要了解一个新的知识,必须要清楚它的作用以及它的整体架构,学习新知识点的地方必然是官网。
上图将spring分为5个部分:core, aop, data access, web, test。图中每个圆角矩形都对应一个jar。所有这些jar的“groupId”都是“org.springframework”,每个jar有一个不同的“artifactId”,另外,“instrumentation”有两个jar,还有一个“spring-context-support”图中没有列出,所以spring4的jar包一共是20个。
下面介绍这5个部分的jar以及依赖关系:
(1)Core Container:核心容器,下面4个模块jar包在使用spring时必须导入。
Core模块:主要包含Spring框架基本的核心工具类,特别重要Beans模块:包含访问配置文件、创建和管理bean以及进行Ioc/DI操作相关的所有类Context模块:构建于Core和Beans模块基础之上,提供了一种类似于JNDI注册器的框架式的对象访问方法 Expression Languaga模块:提供了一个强大的表达式语言用于在运行时查询和操纵对象它们的依赖关系:
(2)Data Access/Integration
JDBC模块:jdbc支持ORM模块:对象关系映射,集成orm框架,如Hibernate,IBatisOXM模块:对象XML映射JMS(Java Message Service)模块:java消息服务Transaction模块:事务控制它们的依赖关系
(3)Web:建立在应用程序上下文模块之上,为基于web的应用程序提供了上下文,还简化了处理多部分请求以及将请求参数绑定到域上的工作
spring-web模块:提供了基础的面向web的集成特性,如文件上传spring-webmvc模块:包含了spring 的mvc实现spring-websocket:为web应用提供的高效通信工具 spring-web-portlet模块:提供了用于Portlet环境和web-servlet模块的mvc实现它们的依赖关系
(4)AOP模块:提供了面向切面编程的实现,将逻辑代码分开,降低它们之间的耦合性
spring-aop:面向切面编程spring-aspects :Aspects模块提供了对AspectJ(一个面向切面的框架,它扩展了Java语言)的集成支持。spring-instrument:提供一些类级的工具支持和ClassLoader级的实现,用于服务器spring-instrument-tomcat:针对tomcat的instrument实现spring-messaging:用于构建基于消息的应用程序它们的依赖关系
(5)Test模块:
test部分只有一个模块,我将spring-context-support也放在这吧
spring-test:spring测试,提供junit与mock测试功能spring-context-support:spring额外支持包,比如邮件服务、视图解析等它们的依赖关系
更多了解查看官网。
原文:https://blog.csdn.net/m0_37742084/article/details/69870203 版权声明:本文为博主原创文章,转载请附上博文链接!