singleton作用域:当把一个Bean定义设置为singleton作用域是,Spring IoC容器中只会存在一个共享的Bean实例,并且所有对Bean的
请求,只要id与该Bean定义相匹配,则只会返回该Bean的同一实例。值得强调的是singleton作用域是Spring中的缺省作用域。
prototype作用域:prototype作用域的Bean会导致在每次对该Bean请求(将其注入到另一个Bean中,或者以程序的方式调用容器的getBean
()方法)时都会创建一个新的Bean实例。根据经验,对有状态的Bean应使用prototype作用域,而对无状态的Bean则应该使用singleton作用
域。
对于具有prototype作用域的Bean,有一点很重要,即Spring不能对该Bean的整个生命周期负责。具有prototype作用域的Bean创建后交由调
用者负责销毁对象回收资源。
简单的说:
singleton 只有一个实例,也即是单例模式。(默认)
prototype访问一次创建一个实例,相当于new。 
应用场合:
1.需要回收重要资源(数据库连接等)的事宜配置为singleton,如果配置为prototype需要应用确保资源正常回收。
2.有状态的Bean配置成singleton会引发未知问题,可以考虑配置为prototype。

转载于:https://www.cnblogs.com/telwanggs/p/11302679.html

JAVA记录-SpringMVC scope属性的两种模式相关推荐

  1. ios java aes128_iOS AES128加密解密的两种模式(CBC和ECB)

    原理什么的不在本篇的范畴,网上很多大牛总结的很好了 请参考AES加密过程详解 1. 苹果默认是CBC模式的,有文档为证: /*! @enum CCOptions @abstract Options f ...

  2. spring配置属性的两种方式

    spring配置属性有两种方式,第一种方式通过context命名空间中的property-placeholder标签 <context:property-placeholder location ...

  3. Java中的string定义的两种方法和区别

    java中的String定义的两种方法和区别 第一种:new方式 String s1 = new String("hello world"); String s2 = new St ...

  4. centos6配置日志外发_CentOS6下记录后台操作日志的两种方式

    CentOS6下记录后台操作日志的两种方式 平时为了记录登录CentOS Linux系统的操作命令,需要将操作日志记录下来,下面介绍两种方式 1.利用script以及scriptreplay工具 sc ...

  5. java项目打jar包的两种情况

    java项目打jar包的两种情况 本文介绍一下java项目打jar包时的两种情况各怎么操作 方法/步骤 1.  1 一.java项目没有导入第三方jar包 这时候打包就比较简单: 1.  首先在Ecl ...

  6. Java中线程的创建有两种方式

    Java中继承thread类与实现Runnable接口的区别 Java中线程的创建有两种方式: 1.  通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2.  通过 ...

  7. Java生成二维码的两种方法

    本文介绍Java生成二维码的两种方法,这两种方法都依赖于google提供的二维码依赖包. 一种是自己写工具类,代码可以网上抄. 另一种是使用hutool第三方工具类的依赖包,不用自己抄代码. 一.自定 ...

  8. epoll的两种模式

    From: http://haoningabc.iteye.com/blog/1432958 linux异步IO浅析  http://hi.baidu.com/_kouu/blog/item/e225 ...

  9. 浏览器的两种模式quirks mode 和strict mode

    在看js代码时,有时会看到关于quirks mode(怪异模式)和strict mode(严格格式)的东西,一直也没深究怎么回事,只是零零碎碎的有些概念,最近终于受不了这种似懂非懂的感觉,决定好好学习 ...

最新文章

  1. 判断直线与线段 是否相交 + 加入误差 故需要判断重点 poj 3304 Segments
  2. git常用基本简单命令
  3. PAT甲级1090 Highest Price in Supply Chain:[C++题解]树、结点到根结点的距离、记忆化搜索、树形dp
  4. php把proto解析为文档,Protobuf 文件生成工具 Prototool 命令详解
  5. MySQL无法修改字段
  6. JS和OC交互的简单应用
  7. 新手上路之django项目开发(二)-----mysql数据库配置及其增删改查操作
  8. vuebaidumap 删除覆盖物_VUE BAIDU MAP覆盖物 - 自定义覆盖物手记
  9. ASP.NET MVC 利用AreaRegistration进行Area区域模块化开发
  10. 连续子数组的最大和(基于动态规划)
  11. LeetCode Binary Tree PostorderTranversal
  12. 南昌计算机学校哪家最可靠,南昌问题孩子管教学校哪家靠谱
  13. https://blog.csdn.net/qq_43412289
  14. A001-186-2629-赖海洲
  15. 真正的程序员到底应该是什么样子的?
  16. resultful风格接口
  17. PVE虚拟机开启支持虚拟化
  18. Java基础-OOP 面向对象编程
  19. LCS(longest common sequence)算法的实现(十分详细)
  20. html语言下上标对齐,HTML 标记语言全面详细解 一天学会

热门文章

  1. android删除wifi配置,[RK3288][Android6.0] WiFi之无线网络配置的忘记(移除)过程
  2. 程序员c语言简历,程序员的简历该怎么写?当然是程序!
  3. (67)SPI外设驱动接收驱动(六)(第14天)
  4. (27)Verilog HDL循环语句:while
  5. php 获取变量指针_PHP 底层的运行机制与原理
  6. 7.FreeRTOS学习笔记-事件
  7. 【嵌入式Linux】嵌入式Linux驱动开发基础知识之LED模板驱动程序的改造:设备树
  8. python算法应用(七)——搜索与排名3(点击跟踪网络的设计)
  9. varnish关于Grace mode和Saint mode这两中模式配置
  10. android启动界面修改工具,Android 系统界面调节工具使用及功能