Spring框架

初识Spring框架

1599456917@qq.com · 4月25日 · 2020年 本文2338字 · 阅读6分钟153

初识Spring框架

简介 什么是Spring框架 ..

  1. Spring是为了创建企业应用的轻量级框架,Spring使用的是基本的JavaBean来完成以前只有EJB完成的事情 。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松偶合性角色而言 ,绝大部分Java应用都可以从Spring中收益。
  2. Spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架
  3. ==轻量== 从大小与开销两个方面而言Spring都是轻量的。完整的Spring框架可以在一个只有1Mb对的jar文件发布。并且Spring所需的处理开销也是微不足道的。此外,Spring 是非入侵式的:经典地,Spring应用中的对象不依赖Spring的特性类。
  4. ==控制反转== Spring通过一种称作为控制反转(IOC)的技术促进了松藕合。当应用了IOC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。 —
  5. ==面向切面== Spring提供面向切面编程的丰富指出,允许通过分离应用的业务逻辑与系统级服务(例如 审计(auditing))和事物((transaction)管理)进行内聚性的开发。应用对象只实现它们应该做的–完成业务逻辑–仅此而已。它们并不负责
  6. ==容器== Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一个容器,你可以配置你的每个bean如何被创建–基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例 –以及他们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器
  7. ==框架== Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式组合,典型的是在一个Xml文件里。Spring也提供很多的基础功能(事务管理、持久化框架集成等等)

Spring框架家族

  1. Spring –Java项目
  2. Spring mvc –Java web项目
  3. Spring Boot –继承性容器框架
  4. Spring Task –定时任务框架 应用: 定时执行刷新Redis数据 。定时执行删除过期数据
  5. Spring jpa
  6. Spring Cloud –Spring云框架
  7. Spring Security –针对安全处理的框架

使用Spring的好处

  • 降低组件之间的耦合度 实现软件各层之间的解耦
  • 可以使用容器提供众多的服务 如:事物管理服务
  • 容器提供单例模式支持 开发人员不再需要自己编写实现代码
  • 容器提供AOP的支持 利用它很容易实现权限的拦截运行期监控的功能
  • 容器提供众多的辅助类 如 : jdbcTemlate 、Hibernate Template。
  • Spring对主流的应用框架集成支持 如集成 Hibernate Struts Mybatis JPA 便于应用开发

Spring 模块 图鉴

初识Spring框架-柠檬果肉

Spring模块的分类

1. Data Access/Integration(数据访问/集成)

数据访问/集成层包括 JDBC、ORM、OXM、JMS 和 Transactions 模块,具体介绍如下。

  • JDBC 模块:提供了一个 JDBC 的抽象层,大幅度减少了在开发过程中对数据库操作的编码。
  • ORM 模块:对流行的对象关系映射 API,包括 JPA、JDO、Hibernate 和 iBatis 提供了的集成层。
  • OXM 模块:提供了一个支持对象/XML 映射的抽象层实现,如 JAXB、Castor、XMLBeans、JiBX 和 XStream。
  • JMS 模块:指 Java 消息服务,包含的功能为生产和消费的信息。
  • Transactions 事务模块:支持编程和声明式事务管理实现特殊接口类,并为所有的 POJO。

2. Web 模块

Spring 的 Web 层包括 Web、Servlet、Struts 和 Portlet 组件,具体介绍如下。

  • Web 模块:提供了基本的 Web 开发集成特性,例如多文件上传功能、使用的 Servlet 监听器的 IoC 容器初始化以及 Web 应用上下文。
  • Servlet模块:包括 Spring 模型—视图—控制器(MVC)实现 Web 应用程序。
  • Struts 模块:包含支持类内的 Spring 应用程序,集成了经典的 Struts Web 层。
  • Portlet 模块:提供了在 Portlet 环境中使用 MV C实现,类似 Web-Servlet 模块的功能。

3. Core Container(核心容器)

Spring 的核心容器是其他模块建立的基础,由 Beans 模块、Core 核心模块、Context 上下文模块和 Expression Language 表达式语言模块组成,具体介绍如下。

  • Beans 模块:提供了 BeanFactory,是工厂模式的经典实现,Spring 将管理对象称为 Bean。
  • Core 核心模块:提供了 Spring 框架的基本组成部分,包括 IoC 和 DI 功能。
  • Context 上下文模块:建立在核心和 Beans 模块的基础之上,它是访问定义和配置任何对象的媒介。ApplicationContext 接口是上下文模块的焦点。
  • Expression Language 模块:是运行时查询和操作对象图的强大的表达式语言。

4. 其他模块

Spring的其他模块还有 AOP、Aspects、Instrumentation 以及 Test 模块,具体介绍如下。

  • AOP 模块:提供了面向切面编程实现,允许定义方法拦截器和切入点,将代码按照功能进行分离,以降低耦合性。
  • Aspects 模块:提供与 AspectJ 的集成,是一个功能强大且成熟的面向切面编程(AOP)框架。
  • Instrumentation 模块:提供了类工具的支持和类加载器的实现,可以在特定的应用服务器中使用。
  • Test 模块:支持 Spring 组件,使用 JUnit 或 TestNG 框架的测试。
相关文章
暂无相关文章!
0 条回应

×