
SpringBoot
文章平均质量分 91
SpringBoot
fedorafrog
这个作者很懒,什么都没留下…
展开
-
Spring详解(三)依赖注入及方法注入
1. 依赖注入根据官网介绍,依赖注入主要分为两种方式 构造函数注入 Setter方法注入 我们分别对以上两种方式进行测试,官网上用的是XML的方式,我这边就采用注解的方式了:测试代码如下,我们通过在Service中注入LuBanService这个过程来public class Main02 { public static void main(String[] args) { AnnotationConfigApplicationContext ac = new转载 2021-01-18 16:52:08 · 402 阅读 · 0 评论 -
Spring详解(二)容器及实例化
1. Spring容器1.1 容器的定义我们先看官网中的一句话:Theorg.springframework.context.ApplicationContextinterface represents the Spring IoC container and is responsible for instantiating, configuring, and assembling the beans.翻译下来大概就是:Spring IOC容器就是一个org.springfram..转载 2021-01-18 16:05:01 · 677 阅读 · 0 评论 -
SpringMVC的简介和工作流程
1. 简介Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。SpringMVC是一种web层的mvc框架,用于替代servlet(处理响应请求,获取表单参数,表单验证等)2. 工作流程用户发送请求至前端控制器DispatcherServlet。 D...转载 2020-03-10 14:59:25 · 245 阅读 · 0 评论 -
Spring三级缓存解决循环依赖
1. 前言循环依赖:就是N个类循环(嵌套)引用。通俗的讲就是N个Bean互相引用对方,最终形成闭环。用一副经典的图示可以表示成这样(A、B、C都代表对象,虚线代表引用关系):其实可以N=1,也就是极限情况的循环依赖:自己依赖自己 这里指的循环引用不是方法之间的循环调用,而是对象的相互依赖关系。(方法之间循环调用若有出口也是能够正常work的)2. Spring Bean的...转载 2020-02-28 09:53:05 · 25135 阅读 · 13 评论 -
SpringAOP动态代理原理
1. 动态代理原理SpringAOP是通过动态代理来实现的,有两种动态代理机制。JDK动态代理:只能通过接口声明进行代理,使用Java反射,动态生成字节码技术。Spring调用的是java.lang.reflection.Proxy类来做处理。 CGLIB动态代理:CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的...转载 2020-02-24 15:39:45 · 595 阅读 · 0 评论 -
Spring BeanFactory和ApplicationContext详解
1. Spring IOC容器理解spring容器可以理解为生产对象(OBJECT)的地方,在这里容器不只是帮我们创建了对象那么简单,它负责了对象的整个生命周期--创建、装配、销毁。而这里对象的创建管理的控制权都交给了Spring容器,所以这是一种控制权的反转,称为IOC容器,而这里IOC容器不只是Spring才有,很多框架也都有该技术。2.BeanFactory和Application...转载 2020-02-21 14:44:23 · 1459 阅读 · 0 评论 -
Spring详解(一) Bean生命周期简介
Spring Bean的生命周期是Spring面试热点问题。这个问题即考察对Spring的微观了解,又考察对Spring的宏观认识,想要答好并不容易!本文希望能够从源码角度入手,帮助面试者彻底搞定Spring Bean的生命周期。1. 生命周期四阶段Spring Bean生命周期图如下所示:转存失败重新上传取消是的,Spring Bean的生命周期只有四个阶段实例化 -> 属...转载 2020-02-21 14:28:33 · 834 阅读 · 0 评论 -
SpringBoot自动配置原理
1. SpringBoot启动主程序类@SpringBootApplicationpublic class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); }}每次我们直接直接启动...转载 2020-02-21 11:10:53 · 212 阅读 · 0 评论