5 薛定e的猫

尚未进行身份认证

暂无相关简介

等级
TA的排名 8w+

MySql-事务的四大特性以及不考虑事务会出现什么问题

什么事务原子性一致性隔离性持久性脏读不可重复读幻读

2019-02-26 21:15:55

Spring深度解析-21、Spring各种依赖注入的注解区别

Spring和注入相关的常见注解有Autowired、Resource、Qualifier、Service、Controller、Repository、Component。1、@Autowired是自动注入,自动从spring的上下文找到合适的bean来注入@Autowired(required=true)表示必须找到匹配的Bean,否则将报异常。注意:用来标记属性@Autowired...

2019-01-17 23:12:19

Spring深度解析-20、DispatcherServlet如何处理请求

昨天讲解了DispatcherServlet初始化的过程,DispatcherServlet因为继承自HttpServlet,所以其初始化时通过HttpServlet的init方法开始的,整个过程大致是读取ServletContext中的配置参数、然后初始化上下文,初始化Spring mvc需要用到的对象,比如HandlerMapping等。DispatcherServlet因为是继承自Http...

2019-01-16 23:36:16

Spring深度解析-19、DispatcherServlet的初始化

昨天讲到DispatcherServlet因为继承了FrameworkServlet、HttpServletBean、HttpServlet,因此可以通过Servlet的API对请求进行一些处理与响应。DispatcherServlet的初始化在ContextLoaderListener完成对根上下文的初始化之后才会执行。具体的初始化时间取决于web.xml中servlet关于load-on-...

2019-01-15 23:12:43

Spring深度解析-18、关于DispatcherServlet

什么是DispatcherServletDispatcherServlet在Spring MVC中属于MVC模式的C controller控制层,用于集中处理来自前端的请求,来自前端的请求通过DispatcherServlet进行分发处理,并且返回视图。什么时候去加载DispatcherServlet在ContextLoaderListener实现了spring mvc容器的根上下文的初始化...

2019-01-14 20:27:15

Spring深度解析-17、ContextLoaderListener初始化上下文全过程

初始化过程简述由ContextLoaderListener初始化的上下文称之为根上下文,ContextLoaderListener实现了ServletContextListener接口,ServletContextListener监听ServletContextEvnet事件,当ServletContext发生变化则触发ServletContextEvnet事件,比如tomcat启动时,就会触...

2019-01-13 16:16:11

Spring深度解析-16、Web环境下的IOC容器上下文初始化概述

如何在web.xml中配置,使tomcat容器加载时能初始化Spring的IOC容器?ContextLoaderListener监听器用来干什么ServletContextListenerContextLoaderServletContext是什么?

2019-01-12 21:16:13

设计模式-2、适配器模式

什么是适配器模式?生活中常见的适配器是电源适配器,比如手机的充电器,就是个电源适配器,把220V的电压转为5V的电压,提供给手机充电。所谓适配器,就是连接在两个不匹配的东西之间,使之匹配的一个中间件。因此适配器模式就是这样一个模式,可以将不匹配的接口转化为可以匹配的接口,使原本因不兼容而无法一起工作的接口与类可以一起工作。类适配器类适配器的适用场景:客户端要使用的接口没有对应的方法,但...

2019-01-11 22:10:33

Spring深度解析-15、AOP拦截器链实现原理

在上一篇章的学习中了解到AOP代理对象的执行过程,AOP中的代理对象有JDK代理与CGLIB代理两种方式,这两种代理对象在对目标对象的方法进行拦截,分别通过JdkDynamicAopProxy的invoke和DynamicAdvisedInterceptor的intercept来拦截。这两种的原理是一致的:1、先判断有没有拦截器链,如果没有,那么直接执行目标对象的方法2、如果有拦截器链,则封...

2019-01-10 21:15:51

Spring深度解析-14、AOP代理对象的执行过程分析

JDK代理的invokeCGLIB的intercept目标对象的invoke

2019-01-09 22:18:06

Spring深度解析-13、AOP创建代理对象的两种方式

AOP如何选择创建代理对象的方式JDK代理CGLIB代理

2019-01-08 23:20:04

Spring深度解析-12、AOP代理对象创建原理-ProxyFactoryBean

ProxyFactoryBean设计原理ProxyFactoryBean的配置ProxyFactoryBean创建AopProxy源码解析

2019-01-08 00:31:49

设计模式-1、代理模式

什么是代理模式?代理模式提供了对目标对象的另一个访问方式,即通过代理对象进行目标对象的访问。这样做的目的是在实现目标对象的功能之外,还能做一些额外的增强扩展。为什么需要代理模式?1、中介隔离对象:当客户类不愿意或者不能直接使用目标对象时,代理对象就作为中介者,将客户类的请求委托给目标对象。2、开闭原则:当需要在实现目标对象的功能之外,做一些额外的增强扩展时。比如在方法执行前后打日志,在数据...

2019-01-06 14:37:06

Spring深度解析-11、AOP概念

什么是AOPAdvice通知PointCut切点Advisor通知器

2019-01-05 22:21:36

Spring源码解析-10、BeanFactoryPostProcessor 与 BeanPostProcessor

BeanFactoryPostProcessor 介绍BeanFactoryPostProcessor 使用案例通过源码了解BeanFactoryPostProcessor的执行时机BeanPostProcessor 介绍BeanPostProcessor 使用通过源码了解BeanPostProcessor的注册和执行时机InstantiationAwareBeanPostProces...

2019-01-04 23:39:17

Spring源码解析-9、Bean的生命周期

图BeanFactoryAware、BeanNameAwareInitializingBean和DiposableBean的init-method和destroy-method

2019-01-03 23:19:16

Spring源码解析-8、BeanFactory与FactoryBean

BeanFactory与FactoryBean区别FactoryBean接口介绍如何获取FactoryBean本身?FactoryBean实例介绍

2019-01-02 22:29:02

Spring源码解析-7、spring容器中的Bean是否线程安全?

Spring容器中的Bean是否线程安全,容器本身并没有提供Bean的线程安全策略,因此可以说spring容器中的Bean本身不具备线程安全的特性,但是具体还是要结合具体scope的Bean去研究。spring 的 bean 有哪些scope[作用域]1、singleton:单例。【默认】2、prototype:原型,每次创建一个新对象3、request:请求,每次Http请求创建一个新对...

2019-01-01 16:13:06

Spring源码解析-6、spring单例如何解决循环依赖

什么叫循环依赖循环依赖即两个及以上的bean对象互相持有对方的引用,最终形成一个闭环。spring如何处理正在创建的BeanSpring容器会将每一个正在创建的Bean 标识符放在一个“当前创建Bean池”中,Bean标识符在创建过程中将一直保持在这个池中,因此如果在创建Bean过程中发现自己已经在“当前创建Bean池”里时将抛出BeanCurrentlyInCreationExcept...

2019-01-01 14:04:52

Spring源码解析-5、IOC容器的依赖注入

IOC容器的初始化过程有没有注入依赖IOC容器的初始化过程:1、BeanDefinition的Resource资源定位2、BeanDefinition的载入与解析3、BeanDefinition的注册这三个操作至始至终不存在Bean依赖注入。因此:IOC容器的初始化过程不存在依赖注入,那么可以实现在初始化阶段进行依赖注入吗?答案的可以的:refresh中有这样一段代码:// I...

2018-12-30 20:11:08

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!