Spring
主要为学习Spring源码、特性总结的文章。
ja_rome
平凡的脚步也可以走出伟大的行程
展开
-
Spring Cloud Gateway 入门学习
Spring Cloud Gateway 入门学习 Spring Cloud Gateway 是Spring Cloud的一个项目,它是基于Spring、Webflux、SpringBoot和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式,目标为替换 Netflix Zuul项目,其不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全,监控/指标,和限流。 Spring Cloud Gateway原创 2020-07-13 08:51:17 · 2830 阅读 · 0 评论 -
SpringBoot启动过程源码分析
SpringBoot启动过程源码分析 随着SpringBoot的热度越来越高,现在企业中对SpringBoot的使用也越来越频繁,而SpringBoot也没让我们失望,它极大的提高了编程的快捷性,今天就SpringBoot(1.5.8.RELEASE)启动源码来看看SpringBoot是如何避繁就简的吧。 启动入口 SpringBoot为我们提供了一个简单快捷的启动方式,当我们需...原创 2018-08-05 23:21:12 · 314 阅读 · 0 评论 -
SpringBoot加载配置文件
SpringBoot加载配置文件 读过SpringBoot源码的同学应该都知道它会在启动过程中根据spring.factories加载监听器,而其中有一个名叫ConfigFileApplicationListener的监听器,它的作用为加载配置信息,即application.xml、application.yml。 常量值说明 在ConfigFileApplicationList...原创 2018-08-05 23:21:58 · 1863 阅读 · 0 评论 -
SpringBoot本地化配置
SpringBoot本地化配置 前提概要 相信做过Spring项目的同学应该对下面一行代码比较熟悉: <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="systemPropertiesModeNam...原创 2018-08-12 10:34:48 · 1866 阅读 · 0 评论 -
SpringMvc自定义参数解析与返回值处理
SpringMvc自定义参数解析与返回值处理 近日在做项目的时候,需要解析客户端传来的经过AES加密处理的实体信息,同时也需要向客户端返回经过AES加密的实体信息,在项目初期,都是在Controller方法中去调用某个工具类进行decode、encode操作比较繁琐,于是去寻求解决办法,在翻阅了SpringMvc解析参数的源码后,仿照@RequestBody的进行以下实现。本文基于Spri...原创 2018-08-19 01:13:40 · 4157 阅读 · 0 评论 -
SpringApplicationContext初始化过程
SpringApplicationContext初始化过程 ContextLoaderListener 在SpringBoot面世之前。在一般的WEB项目中,项目的启动都是从web.xml开始的,如果我们想在项目中使用Spring,只需在web.xml文件中指定以下内容即可: <context-param> <param-name>contextConfigLocati...原创 2018-10-18 21:20:20 · 3030 阅读 · 0 评论 -
Spring核心原理
Spring核心原理 在Spring中拥有许多的组件,但核心部分主要为:Beans、Core、Context、Expression,其中最为主要的为Core、与Beans,它们提供了最为核心的IOC和依赖注入功能。下文主要从这两个着手进行说明。 设计思想 Spring5架构图: Spring框架设计理念 在Spring框架中,其最核心组件应属Beans,Spring-Beans模块是所有应用...原创 2018-10-18 21:21:43 · 14282 阅读 · 2 评论 -
SpringAOP原理
Spring中的AOP原理 代理 在熟悉AOP之前我们应该了解一个概念:代理。 代理又分静态代理与动态代理。顾名思义,静态代理的代理关系在编译时就确定了 ,而动态代理的代理关系是在编译期确定的。 动态代理是Java语言中非常经典的一种设计模式,也是所有设计模式中最难理解的一种。 常见的动态代理为JDK原生动态代理和CGLIB动态代理。 静态代理 静态代理实现很简单,但此类代理仅适用于代理类较少的...原创 2018-10-20 17:30:55 · 314 阅读 · 0 评论 -
SpringBoot介绍
SpringBoot介绍 Spring框架为我们提供了多种解决方案,但在使用它的时候总免不了进行导包、配置等操作。于是在2012年10月,有人提出了新需求,要求在Spring框架中支持无容器Web应用程序体系结构,即无不需要将项目打包后放置在中间件中,直接通过main方法引导的Spring容器内配置Web容器服务。 于是,2014年4月,SpringBoot正式发布。 SpringBoot四大...原创 2018-10-22 22:40:23 · 3896 阅读 · 0 评论