spring
文章平均质量分 78
linの架构梦
这个作者很懒,什么都没留下…
展开
-
spring 拦截器
拦截器的船新版本实现方式:自定义拦截器:public class LoginInterceptor implements HandlerInterceptor{ //preHandle是在请求执行前执行的 @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {原创 2021-03-11 20:37:04 · 108 阅读 · 2 评论 -
Springboot集成AOP
maven依赖<!--引入SpringBoot的Web模块--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency> <!--引入AOP依赖--><dependency> <gr原创 2021-03-11 20:33:38 · 438 阅读 · 0 评论 -
spring mvc核心知识
请求流程客户端发起请求前端控制器收到请求调用处理器映射器处理器映射器根据请求的url,找到具体的处理器,生成处理器对象及处理器拦截器,一起返回一个handlerExecutionChain前端控制器根据handlerExecutionChain,通过Handler适配器调用处理器处理器适配器执行响应的handlerhandler返回ModelAndViewHandlerAdapter将处理器执行结果ModelAndView返回给前端控制器前端控制器根据ModelAndView对象向视图解原创 2021-03-05 16:26:55 · 116 阅读 · 0 评论 -
configurationClassPostProcessor
整体结构按照该类中方法的调用顺序进行介绍configurationClassPostProcessor实现了BeanDefinitionRegistryPostProcessor接口。在invokeBeanFactoryPostProcessor中第一个调用到也就是我们第一个获取容器中beanDefinitionRegistryPostProcessor的bean名称时得到该类,并执行实现的postProcessBeanDefinitionRegistry方法public void postP原创 2021-03-05 16:24:06 · 161 阅读 · 0 评论 -
IOC -- bean的创建过程
Bean的创建过程refreshfinishBeanFactoryInitializationpreInstantiateSingletonsgetBeandoGetBean实例化属性注入初始化总的过程就是这几步,下面详细走一下,从第三步开始preInstantiateSingletons该方法是在finishBeanFactoryInitialization方法中被执行。作用是实例化剩余的单实例bean方法由DefaultListableBeanFactory实现先获取ioc原创 2021-03-05 16:21:50 · 303 阅读 · 0 评论 -
invokeBeanFactoryPostProcessors
简介调用bean工厂的后置处理器解析初始化三个集合//第一步:首先调用BeanDefinitionRegistryPostProcessor的后置处理器Set<String> processedBeans = new HashSet<>();//保存BeanFactoryPostProcessor类型的后置List<BeanFactoryPostProcessor> regularPostProcessors = new ArrayList<>(原创 2021-03-05 16:11:40 · 759 阅读 · 0 评论 -
IOC初始化源码
概念DI:依赖注入IOC:控制反转容器初始化以注解的方式启动配置类@Configuration@ComponentScan(basePackages = "com.text")public class MainConfig { public MainConfig() { System.out.println("MainConfig"); }}启动类public class MainStat { public static void main(String原创 2021-03-05 16:00:33 · 80 阅读 · 0 评论 -
AOP--切面解析源码
整体流程按照箭头方向对每个方法的进行解析resolveBeforeInstantiation该方法并没有做什么特别的事情,只是对applyBeanPostProcessorsBeforeInstantiation方法进行了调用bean = applyBeanPostProcessorsBeforeInstantiation(targetType, beanName);applyBeanPostProcessorsBeforeInstantiation获取容器中所有的后置处理器,通过调用get原创 2021-03-05 15:51:33 · 226 阅读 · 0 评论