zoukankan      html  css  js  c++  java
  • spring 第三章 bean 讲解

    作用域和生命周期

    bean 的生命周期有六类

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

    bean 单例作用域引入多例

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

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

    bean循环依赖

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

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

     

      

      

  • 相关阅读:
    BCTF赛后
    有道前端面试总结
    来更新一篇blog吧
    好久没更新了,开学新气象
    leetcode--N-Queens II
    leetcode--N-Queens
    leetcode--Scramble String
    leetcode--Maximal Rectangle
    leetcode--Distinct Subsequences
    leetcode--Sudoku Solver
  • 原文地址:https://www.cnblogs.com/blogxiao/p/14411033.html
Copyright © 2011-2022 走看看