时间:2021-05-19
大多数人会直接这样写:
@Bean@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE)public TestBean getTestBean() { return new TestBean();}ConfigurableBeanFactory.SCOPE_PROTOTYPE的值就是prototype
但是发现Autowire的时候,每一个请求用的还是同一个单例对象,这是因为没设置多例的代理模式的问题,改成如下配置就可以了:
@Bean@Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE, proxyMode = ScopedProxyMode.TARGET_CLASS)public TestBean getTestBean() { return new TestBean();}补充知识:Spring注解@Scope("prototype")
今天发现一个问题:页面查出来的记录,其它业务对其进行修改以后,再查询发现修改之前的记录仍然还在,后来发现是Action没有加@Scope("prototype")注解的原因。
Spring默认scope是单例模式,这样只会创建一个Action对象,每次访问都是同一个Action对象,数据不安全。
一个注册的例子,如果没加上这个注解,注册完成后,下一个请求再注册一次,Action里会保留上一次注册的信息。
struts2是要求每次访问都对应不同的Action,scope="prototype"可以保证当有请求的时候都创建一个Action对象。
以上这篇springboot prototype设置多例不起作用的解决操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1、如果设置了errorContainer、errorLabelContainer、wrapper,则errorPlacement不起作用复制代码代码如下:..
怎么解决Win7关闭锁屏不起作用?很多小伙伴问win7系统关闭锁屏的问题,关闭锁屏不起作用让我们使用起来非常不方便,这篇文章主要讲解怎么解决这个这个问题,希望对
误区#5:AWE在64位SQLSERVER中必须开启错误!在坊间流传的有关AWE的设置的各种版本让人非常困惑。比如说如何设置起作用,如何设置不起作用,在32位和
bean的作用范围:可以通过scope属性进行设置:singleton单例的(默认)prototype多例的request作用于web应用的请求范围sessio
1frommultiprocessingimportPool,Queue。其中Queue在Pool中不起作用,具体原因未明。解决方案:如果要用Pool创建进程,