其核心JAR包spring-web-5.2.0.RELEASE.jar和spring-core-5.2.0.RELEASE.jar的大小均为1.4MB左右

基于工厂模式实现对象的创建

添加了国际化、事件传播、资源加载和透明地创建上下文等功能

Web模块基于Servlet监听器初始化IoC容器

@Bean 注解在方法上,声明该方法的返回值为一个Bean实例

singleton、prototype、request、session和 global session

@PropertySource 声明和加载配置文件

@Async

@Scheduled

@EnableXXX 开启功能支持

@Enable Configuration Properties 开启对@Configuration Properties注解配置Bean的支持

@ExceptionHandler 用于全局控制器的异常处理

其中Bean缓存池为 Hash Map实现

对有状态的Bean经常使用 Prototype

将配置存储到服务器中进行集中化管理

监听和传播集群中事件的状态的变化

将服务注册到注册中心,并与注册中心保持心跳连接

服务注册、发现和配置工具

服务负载过高或服务故障时的容错处理机制

通用网关,动态路由

动态化属性配置和验证、线程安全配置操作、轮询框架、回调机制等??

通过OAuth 2.0协议绑定服务到

日志收集工具包

分布式链路追踪

混合计算模型,结合了流式数据与批量数据

随机负载、轮询负载等

健康指标数据

声明式、模板化的HTTP访问客户端

集群任务的统一管理和调度工具

常见状态模式的抽象和实现

LeaderShip(选举)

image.png

image.png

image.png

Spring默认的代理对象生成策略为:如果是目标类接口,则使用JDK动态代理技术,否则使用CGLib动态代理技术。

CGLib动态代理和JDK动态代理的区别:JDK只能为接口创建代理实例,而对于没有通过接口定义业务方法的类,则只能通过CGLib创建动态代理来实现

DispatcherServlet会把请求分发给各个处理器

准备阶段 & 提交阶段

SqlSession级别的缓存,一级缓存最多能缓存1024条SQL语句

Mapper级别的缓存

在对应的Mapper.xml中配置Cache节点

在对应的Select查询节点中添加useCache=true

支持透明数据审查(新增数据、最后一次修改数据)??

对流数据实时分析的支持??

最后的 SPRING的更多相关文章

  1. 基于spring注解AOP的异常处理

    一.前言 项目刚刚开发的时候,并没有做好充足的准备.开发到一定程度的时候才会想到还有一些问题没有解决.就比如今天我要说的一个问题:异常的处理.写程序的时候一般都会通过try...catch...fin ...

  2. 玩转spring boot——快速开始

    开发环境: IED环境:Eclipse JDK版本:1.8 maven版本:3.3.9 一.创建一个spring boot的mcv web应用程序 打开Eclipse,新建Maven项目 选择quic ...

  3. Spring基于AOP的事务管理

                                  Spring基于AOP的事务管理 事务 事务是一系列动作,这一系列动作综合在一起组成一个完整的工作单元,如果有任何一个动作执行失败,那么事务 ...

  4. [Spring]IoC容器之进击的注解

    先啰嗦两句: 第一次在博客园使用markdown编辑,感觉渲染样式差强人意,还是github的样式比较顺眼. 概述 Spring2.5 引入了注解. 于是,一个问题产生了:使用注解方式注入 JavaB ...

  5. 学习AOP之透过Spring的Ioc理解Advisor

    花了几天时间来学习Spring,突然明白一个问题,就是看书不能让人理解Spring,一方面要结合使用场景,另一方面要阅读源代码,这种方式理解起来事半功倍.那看书有什么用呢?主要还是扩展视野,毕竟书是别 ...

  6. 学习AOP之深入一点Spring Aop

    上一篇<学习AOP之认识一下SpringAOP>中大体的了解了代理.动态代理及SpringAop的知识.因为写的篇幅长了点所以还是再写一篇吧.接下来开始深入一点Spring aop的一些实 ...

  7. 学习AOP之认识一下Spring AOP

    心碎之事 要说知道AOP这个词倒是很久很久以前了,但是直到今天我也不敢说非常的理解它,其中的各种概念即抽象又太拗口. 在几次面试中都被问及AOP,但是真的没有答上来,或者都在面上,这给面试官的感觉就是 ...

  8. 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?

    今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...

  9. Spring之旅(2)

    Spring简化Java的下一个理念:基于切面的声明式编程 3.应用切面 依赖注入的目的是让相互协作的组件保持松散耦合:而AOP编程允许你把遍布应用各处的功能分离出来形成可重用的组件. AOP面向切面 ...

  10. Spring之旅

    Java使得以模块化构建复杂应用系统成为可能,它为Applet而来,但为组件化而留. Spring是一个开源的框架,最早由Rod Johnson创建.Spring是为了解决企业级应用开发的复杂性而创建 ...

随机推荐

  1. 【DS】1.2

    top-iron man   算法 效率度量 时间T=T(n) 1.顺序忽略2.只选一个基本操作分析3.多层嵌套只考虑最深的循环循环了几次  test1: test2: 空间   原地工作:算法所需内 ...

  2. JZOJ 2022.02.10【提高组】模拟总结

    \(\text{简要题解}\) \(\text{GDOI2012}\) 的题 不得不说当年的题做起来真的很不爽 整体看起来就是数据结构+博弈论+宽搜+背包dp优化 考场上 \(T1\) 十分钟解决过了 ...

  3. JZOJ 1082. 【GDOI2005】选址

    \(\text{Problem}\) 很久以前,在世界的某处有一个形状为凸多边形的小岛,岛上的居民们决定建一个祭坛,居民们任务祭坛的位置离岛的顶点处越远越好. 你的任务是求凸多边形内一点,使其与各顶点 ...

  4. ATC:一个能将主流开源框架模型转换为昇腾模型的神奇工具

    摘要:本文介绍了昇腾CANN提供的模型转换工具ATC,介绍了其功能.架构,并以具体样例介绍了该工具的基本使用方法以及常用设置. 本文分享自华为云社区<使用ATC工具将主流开源框架模型转换为昇腾模 ...

  5. PostgreSQL控制文件讲解及案例

    PostgreSQL控制文件内容: 主要分为是三部分,初始化静态信息.WAL及检查点的动态信息.一些配置信息. 我们可以用过pg_controldata命令直接读取PostgreSQL控制文件内容: ...

  6. Django中admin的一些知识点

    Django中的Admin站点管理: 内容发布的部分由网站的管理员负责,包括查看.添加.修改.删除数据: Django项目中默认启用Admin管理站点:列表页选项, 编辑页选项, 重写模板. #准备工 ...

  7. Source Insight 4.0 常用快捷键小记

    1. 括号配对高亮:"在前括号左侧,后括号左侧" 双击鼠标左键,可以选定匹配括号和其中内容(<>,(),L{R},[]之间) 高亮当前单词 : F8 语法窗口(隐藏/显 ...

  8. autodesk2023全家桶 Autodesk 2023 所有产品下载地址

    autodesk2023全家桶 Autodesk 2023 所有产品下载地址 作者: 佚名 2022/4/10 11:51:24 Autodesk系列软件每年都会提前发布,目前autodesk2023 ...

  9. PO/PI

    典型集成场景 PI总体架构 消息映射 General Concepts(通用概念) 映射编辑器 元素 分配源/目标消息类型 有3种消息类型可分配给消息映射 1.使用已经存在于IR中的对象(比如消息类型 ...

  10. 【C学习笔记】day5-2 写代码可以在整型有序数组中查找想要的数字, 找到了返回下标,找不到返回-1.(折半查找)

    #include <stdio.h> #include <stdlib.h> int find(int s) { int n = 0; scanf_s("%d&quo ...