rod johnson采用ioc容器来实现的另一个原因是这会减少好多开发工作量。看一下urlmapping吧,它提供的property本身就是一个hashmap,只有配置完成,我们的bean里的数据就自然存在了,哈哈,好爽吧。不用象struts那样解析xml,再把它的内容一项一项地读到hashmap里。
至少我写了那么多的struts action,写了那么多的spring controller,几乎没有碰到需要在instance变量保持状态的问题。当然也许是我写的代码不够多,struts的设计者craig r. mcclanahan曾经说当时他设计struts时有两个条件不成熟:当时没有测试驱动开发的概念;当时jvm的垃圾收集性能太次。假如现在重新设计的话,他也会采用每个request生成一个新对象的设计方法,这样可以解决掉线程安全的问题了。