• Spring bean作用域


    全当知识要点记录了,大家随意踩踩。

    spring的作用域有以下几种
    singleton作用域
    prototype作用域
    request作用域
    session作用域
    global-session作用域

    1. singleton作用域 scope="singleton" 默认值
    bean设置为该作用域时,Spring IOC容器中只会存在一个共享的bean实例,也就意味着Spring IOC容器只会创建该bean定义的唯一实例。
    这个单一实例会被存储到单例缓存(singleton cache)中。

    2. prototype作用域 scope="prototype"
    prototype作用域部署的bean,每一次请求(将其注入到另一个bean中,或者以程序的方式调用容器的getBean())都会产生一个新的bean
    实例,相当于一个new操作。
    注意:Spring不能对一个prototype bean的整个生命周期负责,容器在初始化、配置、装饰或者是装配完一个prototype实例后,将它交给客户端,
    随后就对 prototype实例不闻不问了。此时清楚任何prototype作用域的对象并释放其所持有的昂贵资源,都是客户端代码的职责。

    注意:request作用域、session作用域、global-session作用域使用的时候首先要在初始化web的web.xml中做以下配置
    <listener>
        <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
    </listener>
    3. request作用域
    表示该作用域下,针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP-request内有效

    4. session作用域
    session作用域表示针对每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTP-session内有效

    5. global-session作用域
    全局会话内有效

  • 相关阅读:
    jQuery的简单实用的25个知识点
    toDoList案例
    缓动动画函数的封装
    轮播图的设置:
    Django学习:cookie和session
    Django学习:ORM
    Django学习:中间件
    Django学习:url路由系统
    Django学习:模板继承和配置静态文件
    Django学习:模板语法
  • 原文地址:https://www.cnblogs.com/redcool/p/6258973.html
Copyright © 2020-2023  润新知