Spring自解

1、Spring是什么?

  Spring是一个IOC(控制反转)和AOP(面向切面)的容器框架,它可以简化企业级应用程序的开发。


2、Spring可以做什么?

  ①Spring可以根据配置文件创建并组装对象之间的依赖关系。

  ②Spring的AOP面向切面编程可以无耦合的实现日志、性能统计和安全控制等。

  ③Spring可以进行数据库事物管理。

  ④Spring可以方便的集成第三方数据库访问框架、web框架以及其他的技术支持(如缓存框架)。同时Spring拥有自己的JDBC模板,web框架(Spring MVC)。

3、Spring的优点

  ①轻量级框架

  ②低入侵,代码污染低

  ③低耦合,IOC控制反转方便解耦,简化开发

  ④面向切面编程思想,将业务逻辑和系统服务分开。

  ⑤方便集成其他优秀框架,当然自己的SpringMVC框架也很优秀。

  ⑥容器,Spring包含并管理应用中对象的创建,配置以及生命周期。

4、Spring的体系结构

 

 

从下往上看 

①Test 支持 Spring 组件,使用 JUnit 或 TestNG 框架的测试。

②core container 核心容器层  有spring的最基础模块

Beans 模块  提供了 BeanFactory,是工厂模式的经典实现,Spring 将管理对象称为 Bean。

Core 核心模块

提供了 Spring 框架的基本组成部分,包括 IoC 和 DI 功能。
context 模块  建立在核心和 Beans 模块的基础之上,它是访问定义和配置任何对象的媒介。ApplicationContext 接口是上下文模块的焦点。
sqEL 模块 是运行时查询和操作对象图的强大的表达式语言。

 

③其他模块

 AOP 模块  Spring的 AOP 封装包提供了符合AOP Alliance规范的面向切面的编程实现,可以自定义,例如方法拦截器和切点减弱代码的功能耦合。
 Aspect 模块  提供了与AspectJ的集成,这是一个功能强大并且成熟的面向切面编程的框架。
 Instrmentation 模块 在一定的应用程序中提供了类instrumentation的支持和类加载器的实现。
  Messaging 模块 为Stomp提供了作为应用程序中webSocket自协议的使用,他支持一个注解编程模型,他是为了选路和处理来自webSocket客户端的Stomp信息。

④web层   

Web 模块 提供了基本的面向web的集成思想,例如多个文件上传的功能和使用servlet监听器和面向web应用程序的上下文初始哈市IOC容器。
Servlet 模块 包含spring的模块视图-控制器-(MVC)实现了web应用程序。
Web Socket 模块 为WebSocket-based提供了支持,而且在web应用程序中提供了客户端和服务端之间通信的两种方式。
Porlet 模块 提供了portlet环境中实现mvc,并且反映了web_socket模块的功能。

⑤数据访问/集成层

JDBC 模块 提供了删除冗余的JDBC相关编码的JDBC抽象层。
ORM 模块 ORM模块为流行的对象关系映射API,包含JPA,JDO,Hibernate和IBatis,提供了集成层。
OXM 模块 提供了抽象层,它支持对JAXB,Castor,XMlBeans,JiBx和XStream的对象/xml映射实现。Java消息服务JMS模块包含生产和消费的信息的功能。
Transactions 事务模块 事务模块为实现特殊接口的类及所有的POJO支持编程式和声明式事务管理。
posted @ 2021-06-30 21:21  鱼自知  阅读(54)  评论(0)    收藏  举报