简单说,就是 Spring 设计了一个 核心容器 Core Container,这里头主要就是管理 Bean 生命周期,然后为了服务这些业务 Bean 北遴选引入了 Core , Context , SpEL 等工具到核心容器中。然后在核心容器基础上,又为了把更多的能力集成进来,例如为了拓展 数据访问 能力加入了 JDBC 、ORM 、OXM 、JMS 、Transactions 等,为了拓展 Web 能力加入了 WebSocket 、Servlet、Web、Portlet 等,其中为了把 RequestMapping 或 Servlet 等这些使用集成到业务 Bean 上,引入了 AOP ,包括还有引入(最终是提供) Aspects、Instrumentation、Messageing 等增强方式。

Bean 之间通过接口协议互相串联起来的,湖北遴选至于每个接口有多少个实现类,那都不会有任何影响,Bean 之间只保留单点通道,通过接口相互隔离,关系都交给 Spring 管理,这样就避免了实现类和实现类之间出现一些耦合,就算方法增减了、引用变更了也不至于互相污染。

  1. Bean管理: 解耦Bean关系。理解为内核,从 Bean 的定义、创建、管理等,这是业务Bean。

  2. 功能增强: 解耦功能、声明式简化。遴选理解为外延,在业务Bean基础上,需要访库等能力,那就是功能增强。

基本体现的就是两个核心特性,一个 解耦、一个 简化

作者:|幕布斯3223999|,原文链接: http://www.imooc.com/article/325287

文章推荐

golang泛型实现——双向循环链表

单词搜索问题

动态规划解0-1背包问题

用python为心爱的人制作520照片墙,已成功做出效果图

明天 520,说说两性之间的那些事

python四个性能检测工具,包括函数的运行内存、时间等等...

推荐一款代码依赖包安全漏洞检查插件

parser.ParseException: Encountered

修改docker容器端口映射

myql相关

java并发编程-StampedLock高性能读写锁

Tenseal库