zoukankan      html  css  js  c++  java
  • spring的拓展点之-InitializingBean

    spring的拓展点之-InitializingBean

    一:有什么用

    InitializingBean是spring提供的一个初始我们bean熟悉的方法,我们可以直接看看源码注释。

    我们看这个接口上的注释大概意思就是:

    当我们需要初始化我们bean中的一些参数,或者校验一些参数的时候的时候就可以通过实现该接口的afterPropertiesSet方法,初始化bean中属性。同时也说明了,初始化bean属性的还可以通过配置init方法。

    通过源码的注释我们大致知道这个接口的功能了。实现这个接口和配置init方法有什么好处呢?,这个也就是不需要配置参数了,这个接口再一些框架和spring整合时候用的比较多,这样就不需要用户去配置了。

    二:在哪里执行

    查看源码的AbstractAutowireCapableBeanFactory 这个类中的configureBean方法中,再填充了必要的注入属性后,执行initializeBean 初始化bean的方法。

    进入initializeBean方法

    通过看注释和源码我们知道这个就是执行init方法和afterPropertiesSet方法的地方。

    总结来说就是给我们提供一个初始化一些bean的属性值的地方

    三:在哪里用了

    这个接口比较简单这里不进行代码验证了。我们可以看看mybatis和spring整合的SqlSessionFactoryBean这个类。

    我们看实现的afterPropertiesSet 方法。

    这个方法就是进行属性初始化的校验和sqlSessionFactory属性赋值。

  • 相关阅读:
    第六次上机作业
    NOIP2016 DAY1 T2天天爱跑步
    NOIP2009 T2 Hankson的趣味题
    NOIP2013 DAY2 T3火车运输
    线段树
    NOIP2012 DAY2 T2借教室
    NOIP2015 DAY2 T1跳石头
    NOIP2016 DAY2 T3 愤怒的小鸟
    文本编辑常用快捷键
    洛谷P1516 青蛙的约会
  • 原文地址:https://www.cnblogs.com/simple-flw/p/14925034.html
Copyright © 2011-2022 走看看