Spring概述
文章目录
1 什么是Spring
官网解释:The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
百度百科:Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。
个人理解:Spring是分层的JavaSE/EE full-stack(全栈)轻量级开源框架。特点是:IoC(Inverse of Control 控制反转)、AOP(Aspect Oriented Programming 面向切面编程)。Spring使用基本的JavaBean来完成以前只可能由EJB完成的工作,取代了EJB的臃肿、低效的开发模式。
&emap;&emap;在实际开发中,通常服务器端在采用三层体系架构,分别为表示层(Web)、业务逻辑层(Service)、持久层(Dao),Spring对每一层都提供了技术支持。
2 Spring框架的优点
- 非侵入式设计
- 方便解耦、简化开发
- 支持AOP
- 支持声明式事务处理
- 方便程序测试
- 方便集成各种优秀框架
- 降低Java EE API的使用难度
3 Spring的体系结构
3.1 Core Container(核心容器)
- Beans:提供了BeanFactory,Spring将管理对象称为Bean。
- Core:提供了Spring框架的基本组成部分,包括IoC和DI功能。
- Context:建立在Core和Beans模块之上,是访问所管理对象的媒介。
- SpEL:Spring3新增模块,是运行时查询和操作对象图的表达式语言。
3.2 Data Access/Integration(数据访问/集成)
- JDBC:提供JDBC的抽象层,大幅度的减少了在开发过程中对数据库操作的编码。
- ORM:对ORM API支持,包括JPA、JDO和Hibernate提供了集成层支持。
- OXM: 提供了一个支持对象/ XML映射的抽象层实现,如 JAXB、Castor、XMLBeans、JiBX和XStream。
- JMS: Java消息传递服务,包含使用和产 生信息的特性,4.1后支持与 Spring-message模块集成。
- Transactions:支持对实现特殊接口以及所有POJO类的编程和声明式的事务管理。
3.3 Web
- WebSocket:Spring4新增模块,它提供了WebSocket 和SockJS的实现,以及对STOMP的支持。
- Servlet:也称Spring-Web MVC模块,包含Spring MVC和REST Web Services实现的Web程序 。
- Web:提供了基本的Web开发集成特性,如:多文件上传、使用Servlet监听器来 初始化IoC容器以及Web应用上下文。
- Portlet:提供了在portlet环境中使用MVC实现,类似Servlet模块的功能。
3.4 其他模块
- AOP:提供了面向切面编程的实现。
- Aspects:提供了与AspectJ的集成功能。
- Instrumentation:提供了类工具的支持和类加载器的实现,可以在特定的应用服务器中使用。
- Messaging:Spring4新增模块,提供对消息传递体系结构和协议的支持。
- Test:提供了对单元测试和集成测试的支持。
4 Spring的下载及目录结构
Spring框架包下载:https://repo.spring.io/release/org/springframework/spring/
- docs文件夹中包含API文档和开发规范。
- libs文件夹中包含JAR包和源码。
- schema文件夹中包含开发所需要的schema文件。
4.1 Maven加载Spring框架
在pom.xml文件中加上需要的版本依赖:
<!-- https://mvnrepository.com/artifact/org.springframework/springcontext -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.2.4.RELEASE</version>
</dependency>
声明:
若本人发布的作品涉及版权或存在其他问题,请联系我删除。
谢谢浏览!
本文地址:https://blog.csdn.net/Haa__/article/details/107561043