spring默认为单例模式
这两天看到一个bug,记录下。
在获取任务的时候,本来任务不是由这个柜员领取的,但是最后跑到那个柜员下面去了。
查看日志,发现两个任务的领取操作很近,日志是穿插着打的。
后来经人指点,说spring初始化bean默认是单实例模式,也就是说这个类的私有属性被后来的调用给改掉了。导致在领取任务的时候 第一个调用的领任务的类的私有变量就变为第二次调用的任务的。所以领串了。这样第二个调用也会随之报错。
这个bug解决的话两个方法。
1:去掉这个私有变量,直接在方法里面初始化。
2.修改spring 初始化这个类,不要使用单例模式。
<bean id="user" class="..." singleton="false"/> 如果不写,就是默认值true。
spring默认为单例模式的更多相关文章
- Spring bean默认为单例模式会引发并发问题吗
在web项目中使用spring,如果网站同时很多人访问,这时候使用spring默认的单例模式的bean是否合适呢?回不回影响效率或者产生交叉呢? Spring默认的单例模式的bean,因为是单例的,所 ...
- spring怎么实现单例模式?
Spring学习之路——单例模式和多例模式 在Spring中,bean可以被定义为两种模式:prototype(多例)和singleton(单例) singleton(单例):只有一个共享的实例存 ...
- Spring中的单例模式
Spring中的单例模式 单例模式的介绍 1.1 简介 保证整个应用中某个实例有且只有一个 1.2作用 保证一个类仅有一个实例,并且提供一个访问它的全局访问点. 单例模式的优点和缺点 单例模式的优 ...
- Spring 默认的 AopProxy
Spring 默认的 AopProxy JdkDynamicAopProxy Spring xml 文件默认解析器 DefaultDocumentLoader 采用 standard JAXP-con ...
- spring 默认情况下事务是惟一的 同一个方法里面第一个sql开启后 在执行完 将事务传递给下一个sql
spring 默认情况下事务是惟一的 同一个方法里面第一个sql开启后 在执行完 将事务传递给下一个sql
- spring默认启动位置以及contextConfigLocation设置源码解析
这几天在看spring的源码,涉及到spring启动位置的部分,下面就看看spring到底是从哪儿开始加载的.本文使用的是spring3.0M3 首先spring的加载会借助一个监听器ContextL ...
- spring默认欢迎页设置
简单配置的方式,直接展示静态网页,不经过Controller. web.xml 中什么没有配置任何有关欢迎页的信息!其实这时等效于如下配置:这个会由Web容器最先访问! //-未指定欢迎页时,缺省等于 ...
- Spring中的单例模式和多例模式的应用
在Spring的配置中,Bean的scope属性中存在两种模式:singleton(单例模式).prototype(多例模式) singleton 单例模式:对象在整个系统中只有一份,所有的请求都用一 ...
- 对spring默认的单列模式的理解
我想大部分朋友对spring的单例模式都比較了解. 什么叫单例模式呢,顾名思义就是无论有多少个请求,都仅仅生成一个实例. 比方在spring中a,b请求都在调用同样的bean ,他们都是调用的同一个b ...
随机推荐
- vs2010打开qt的.pro文件时错误解决办法
注意:qt creator工程中一般都已经存在*.pro文件,里面存放着一些自己配置的包含头文件和lib库文的信息,最好不要再重新使用qmake -project生成,若重新生成,则可能要重新增加配置 ...
- python httplib2应用get post
import httplib2,time #装饰器方法,用于记录方法消耗时间 #推荐将print 改成log def timer(func): def _warpper(self,*argv) ...
- 【SpringAop】【统一日志处理】注解方式理解以及使用
[注意:本次代码的demo会存在百度网盘,由于公司的保密,禁止上传,所以仅本人可见] 目前公司在做数据资产项目,数据质量部分使用到了springaop做统一日志处理,以前对这块有了解,有点模糊不清,今 ...
- flask部署
https://blog.csdn.net/zhuod/article/details/77850783
- ASP.NET 在OnClientClick中js方法直接调用Eval绑定字段的数据
最近有一项目中使用到了asp.net的GridView控件.需要在前端被点击某一行数据时,前端获取到改行后台绑定的数据序列号.遍用<%# Bind("ID) %>.<%# ...
- 单片机一种简便的printf调试方案。
此处引用csdn博客.链接如下. http://blog.csdn.net/cp1300/article/details/7773239 http://blog.csdn.net/aobai219/a ...
- git .gitignore未生效
添加进.gitignore的问题未生效. .gitignore只会忽略在.gitignore编写之后的未跟踪(untrack)文件,而在编写.gitignore之前已经add and commit的文 ...
- Ubuntu18.04网易云音乐双击运行
18.04 之后发现无法运行网易云音乐,后发现必须给sudo权限还能运行,但是每次都打开终端sudo很麻烦.看网上很多人是修改什么什么文件,,,没仔细看. 我觉得,恩,,写行脚本,双击运行也可行且很方 ...
- Linux 在文档中查找满足条件的行并输出到文件:
Linux 在文档中查找满足条件的行并输出到文件: 文件名称: dlog.log 输出文件: out.log 1.满足一个条件(包含 “TJ” )的语句: grep “TJ” dlog. ...
- shell 查询oracle数据库
一个需求,做个监控脚本,监控一个表,把数据拉出了,处理一下,组成一个新的脚本,并执行. 直接上脚本: #!/bin/bash VALUE=`sqlplus "scott/trigger@or ...