• spring 第三章 bean 讲解


    作用域和生命周期

    bean 的生命周期有六类

    singleton(单例)   上下文只会创建一个实例                                                                 
    prototype(多例)   根据需要创建多个
    request  识别到http请求,每个http请求创建一个实例
    session bean 的生命周期限定在http session 中
    application   整个servletContext 上下文创建一个实例
    websocket   每个websocket 连接创建一个

    bean 单例作用域引入多例

      单例在初始化时候已经需要依赖多例,此时prototype 创建一个实例,这个多例的实例就是唯一提供个这个单例。总结:单例引入多例,多例只会创建一个实例。

      若想要单例运行期重复获得多例,则不能通过注入的方式,可以通过上下文实时获取多例。

    bean循环依赖

      构造函数注入不支持循环依赖,但是用setter 属性注入支持。

      原因:属性注入,bean 实例化时分两步:先实例化当前对象,然后再实例化注入的属性。当有循环依赖时候先把当前对象实例化,当属性再实例化时从实例换从从获取实例即可。

     

      

      

  • 相关阅读:
    跨域(六)——window.name
    跨域(五)——postMessage
    跨域(四)——document.domain
    跨域(三)——JSONP
    Web安全颜色
    跨域(二)——WebSocket
    Win7下npm命令Error: ENOENT问题解决
    跨域(一)——CORS机制
    父组件传值给孙组件
    vue使用bus进行兄弟组件传值
  • 原文地址:https://www.cnblogs.com/blogxiao/p/14411033.html
Copyright © 2020-2023  润新知