【发布时间】:2010-12-25 15:47:25
【问题描述】:
在一个大型项目中,我们开始使用 spring 来管理我们的依赖注入。由于大多数开发人员都是从编码有状态类迁移而来,我们发现一些无状态 bean 实际上包含本身是有状态的实例变量。
如果我错了,请纠正我,编写一个单元测试来验证spring xml中定义的所有无状态bean实际上都是无状态的(即bean不应该有任何从未定义过的实例变量)弹簧xml)。在我尝试自己写之前,想知道是否有任何现有的工具可以检查?
谢谢
【问题讨论】:
-
为什么说“无国籍”?一个没有字段的java类?那不就是一堆互不通信的Spring bean吗?
-
您的意思是要确保您的实例变量永远不会改变?
-
bean 肯定可以有字段,但是,我的理解是 spring bean 将在容器中被重用,所以 bean 中的字段可能会携带状态,所以这些字段应该是最终的(常量)或定义的在 spring xml 中也是(它可以是无状态 bean 或原型..,至少它们的定义是经过深思熟虑的)
-
bing,如何使用构造函数注入并坚持每个成员都应该是最终的?
标签: spring testing javabeans stateless