今天写代码时,遇到个问题,问题大概如下:在写一个新增模块,当各文本框等输入值后,提交存入数据库,跳到其它页面,当再次进入该新增页面时,上次输入的数据还存在。

经过检查发现是,spring配置文件中,配置的<bean id="pActionVO" name="pActionVO" class="com.wisdom.lxgz.purchases.model.vo.PurchasesActionVO"/>没有写 scope="prototype"。默认是singleton单列模式,每次访问时不会新建一个pActionVO,他任然会保留上次访问的过记录的信息。所以,我们在Spring配置Bean时,需要加上属性scope=”prototype”或singleton=”false”。

singleton模式指的是对某个对象的完全共享,包括代码空间和数据空间,说白了,如果一个类是singleton的,假如这个类有成员变量,那么这个成员变量的值是各个线程共享的(有点类似于static的样子了),当线程A往给变量赋了一个值以后,线程B就能读出这个值。因此,对于前台Action,肯定不能使用singleton的模式,必须是一个线程请求对应一个独立的实例。推而广之,只要是带数据成员变量的类,为了防止多个线程混用数据,就不能使用singleton。对于我们用到的Service、Dao,之所以用了singleton,就是因为他们没有用到数据成员变量,如果谁的Service需要数据成员变量,请设置singleton=false。

在新增页面,原来s:property显示的数据,要再后台取到,我是配置了s:hidden.

转载于:https://www.cnblogs.com/gexiaoshan/p/3401877.html

spring bean中scope=prototype“的作用相关推荐

  1. Spring Bean 的scope什么时候设置为prototype,什么时候设置为singleton

    Java代码   <bean id = "testAction" class = "com.kewen.xxxAction" scope = " ...

  2. Spring Bean 的 scope属性为何要设置为prototype

    <bean id = "testAction" class = "com.kewen.xxxAction" scope = "prototype ...

  3. Spring Bean 中的线程安全

    在 使用Spring框架时,很多时候不知道或者忽视了多线程的问题.因为写程序时,或做单元测试时,很难有机会碰到多线程的问题,因为没有那么容易模拟多线 程测试的环境.但如果不去考虑潜在的漏洞,它就会变成 ...

  4. spring bean属性scope

    ‍‍<bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton ...

  5. spring— Bean标签scope配置和生命周期配置

    scope配置 singleton 默认值,单例的 prototype 多例的 request WEB 项目中,Spring 创建一个 Bean的对象,将对象存入到 request 域中 sessio ...

  6. Spring框架中@Primary注解的作用

    @Primary注解 @Primary的作用就是当一个接口存在多个实现类时,我们就可以通过@Primary注解来指明哪个实现类作为首选进行自动装配注入. 如果不加@Primary注解,接口ICarSe ...

  7. spring配置文件中的import标签作用

    多个 Spring 配置文件通过 import 方式整合的话: 配置文件会先合并,后解析,也就是说,无论是命名空间还是配置的内容,都会合并处理. 因为多个 Spring 配置文件最终会合并到一起(形成 ...

  8. Maven中scope标签的作用

    目录 1 Maven中依赖作用的范围 2 Scope的常见取值 1 Maven中依赖作用的范围 Maven中使用scope标签来指定当前包的依赖性以及传递性,常见的可选值有:compile, prov ...

  9. Spring Boot中parent标签的作用

    在Spring Boot的官方示例中,都是让我们继承一个spring的 spring-boot-starter-parent作为parent标签 <parent><groupId&g ...

最新文章

  1. JAXB 转 XML乱码
  2. Telnet协议详解
  3. 负margin的移位参考线
  4. Angular export class AppComponent里定义变量的实现原理
  5. BugkuCTF-Crypto题Crack it
  6. Win10用户获取最高权限的方法?
  7. 计算机二级office试题27答案,2017年12月计算机二级MS Office习题答案(一)
  8. Vue学习笔记之16-tarbar地开发思路
  9. 数学建模——什么是数学建模
  10. 商业计划书范文3000_生鲜电商商业计划书范文|优鲜选
  11. R语言小代码(聚类练习)
  12. 主引导记录(MBR)的反汇编分析
  13. python判断两个数据集是否存在包含关系
  14. java aspose 导出word_aspose.words导出html 转word文档带图片,(无网络也可以看图)
  15. 关于安卓视频加水印与剪辑功能实现
  16. L1-6 吉老师的回归 (15 分)
  17. 木板切割问题——贪心
  18. php怎么查看qq邮箱,thinkphp实现163、QQ邮箱收发邮件的方法
  19. 1086:角谷猜想(C C++)
  20. Windows_U盘_SD卡_硬盘等存储介质无法完成格式化

热门文章

  1. ant 编译android工程(转)
  2. WSUS 3.0 STEP BY STEP 配置手册
  3. systematic literature review how to write it?
  4. business man
  5. UNITY Destroy()和DestroyImadiate()的区别
  6. jmeter之调度器配置
  7. 写一个脚本定时自动备份mysql到指定目录
  8. 面向领域驱动的应用开发框架Apworks 2.5发布
  9. Microsoft Sync Framework 2.1 软件开发包 (SDK)
  10. CowNew开源-sql解析引擎和cownewsql阶段成果汇报