zoukankan      html  css  js  c++  java
  • 后置处理器概述

    --后置处理器在spring中的作用:

      后置处理器在bean初始化和实例化的过程中起着举足轻重的作用,处理某些注解、设置某些bean参数、生成某些动态代理等等

    --常用的后置处理器(BeanPostProcessor)

    1、 ApplicationContextAwareProcessor
      作用:让实现ApplicationContextAware的bean得到applicationContext(容器上下文)
      (EnvironmentAware,EmbeddedValueResolverAware,ResourceLoaderAware,ApplicationEventPublisherAware,MessageSourceAware,ApplicationContextAware
      实现这些接口的bean都是这个后置处理器处理)
    2、 InitDestroyAnnotationBeanPostProcessor
    3、 InstantiationAwareBeanPostProcessor(接口)
    4、 CommonAnnotationBeanPostProcessor
      CommonAnnotationBeanPostProcessor执行@Resource等注解的注入,
    5、 AutowiredAnnotationBeanPostProcessor
      AutowiredAnnotationBeanPostProcessor执行@Autowired注解注入
    6、 RequiredAnnotationBeanPostProcessor
      RequiredAnnotationBeanPostProcessor执行@ Required注解
    7、 BeanValidationPostProcessor
    8、 AbstractAutoProxyCreator


    -----实例化和初始化的区别
    1、实例化----实例化的过程是一个创建Bean的过程,即调用Bean的构造函数,单例的Bean放入单例池中

    2、初始化----初始化的过程是一个赋值的过程,即调用Bean的setter,设置Bean的属性

    之前的BeanPostProcessor作用于过程(2)前后,现在的InstantiationAwareBeanPostProcessor则作用于过程(1)前后;

  • 相关阅读:
    转:全面理解Javascript闭包和闭包的几种写法及用途
    VS2010 AnkhSvn
    silverlight 子UserControl获取父UserControl
    IIS相关
    (转)Javascript中console.log()用法
    (转)Sql Server 保留几位小数的两种做法
    asp.net Web API
    (转)C#中数组、ArrayList和List三者的区别
    PowerDesigner
    (转)jQuery.fn.extend与jQuery.extend到底区别在哪?
  • 原文地址:https://www.cnblogs.com/windy13/p/11986283.html
Copyright © 2011-2022 走看看