Spring下载与简介
Spring下载
博主这里整理了官方Spring框架最新jar包下载链接以及maven依赖(持续更新,最终更新日期:2020-5-5):
需要的可以直接点击下载:
spring-framework-5.2.6.RELEASE-dist.zipspring-framework-5.2.6.RELEASE-docs.zipspring-framework-5.2.6.RELEASE-schema.zip
maven项目:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>5.2.6.RELEASE</version>
<type>pom</type>
</dependency>
各位看官如果嫌官网下载太麻烦,可以直接点击这个链接选择自己需要的版本进行下载:
Spring官方各版本下载链接(由于是外网,官网访问速度有些慢,相比之下这个网址能快一点)
如果不嫌麻烦,可以跟着下面的步骤自己找:
- 进入spring官方下载首页>点击左侧Artifacts
- 依次点击libs-release-local>org>springframework>spring>选择自己需要的版本>spring-framework-x.x.x.REALEASE-dist.zip
- maven项目可以直接在下面找到依赖,如果需要手动下载jar包,则点击上面的Download进行下载。
Spring解压包中的jar包
Spring的解压文件中有几个文件夹:docs、libs、schema。
- docs :该文件夹下包含Spring的相关文档、开发指南及API参考文档。
- libs :所有的 Spring 库都在这里,在里面我们会发现每个jar包都有三个不同后缀的文件。
- ***.jar :字节码jar包
- ***-javadoc.jar :文档
- ***-sources.jar :源码
- schema :所有的约束(xsd)文件都在这里。
Spring初认识
Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。
- 目的:解决企业应用开发的复杂性
- 功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能
- 范围:任何Java应用
Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。(以上信息来自百度百科)
Spring框架的体系结构
Spring 由20 多个模块组成,它们可以分为数据访问/集成(Data Access/Integration)、Web、面向切面编程(AOP, Aspects)、应用服务器设备管理(Instrumentation)、消息发送(Messaging)、核心容器(Core Container)和测试(Test)。
Spring的特点
- 非侵入式
Spring 框架的API 不会在业务逻辑上出现,即业务逻辑是POJO。由于业务逻辑中没有Spring 的API,所以业务逻辑可以从Spring 框架快速的移植到其他框架,即与环境无关。 - 容器
Spring 作为一个容器,可以管理对象的生命周期、对象与对象之间的依赖关系。可以通过配置文件,来定义对象,以及设置与其他对象的依赖关系。 - IoC
控制反转(Inversion of Control),即创建被调用类的实例并非由调用方创建,而是由Spring容器代之创建并注入给调用方。
当应用了IoC,一个对象所依赖的其它对象会通过被动的方式传递进来,而不是这个对象主动去创建或者查找依赖对象。 - AOP
面向切面编程(AOP,Aspect Orient Programming),是一种编程思想,是面向对象编程OOP 的补充。在 OOP 中模块化的关键单元是类,而在 AOP 中模块化的关键单元是方面。AOP 帮助你将横切关注点从它们所影响的对象中分离出来,然而依赖注入帮助你将你的应用程序对象从彼此中分离出来。一个程序中跨越多个点的功能被称为横切关注点,这些横切关注点在概念上独立于应用程序的业务逻辑。有各种各样常见的很好的关于方面的例子,比如日志记录、声明性事务、安全性,和缓存等等。