java-错误的Spring初始化的影响

我正在使用错误构建的spring应用程序.需要引用的对象不是使用IOC,而是从上下文中提取其引用:

    BeanFactory b = SingletonBeanFactoryLocator.getInstance().
               useBeanFactory("factory").getFactory();
    Bean foo = (FOO)beanFactory.getBean("foo");

撇开非IOC设计,这还有其他有害影响吗?例如,这是否对性能有特殊影响?有什么办法可以导致创建其他上下文或对象引用?还有什么真正令人不愉快的事情可能引起的吗?

最佳答案
古老的短语“您可以用任何语言编程fortran”都浮现在脑海.使用spring作为服务定位器听起来好像您错过了许多使spring变得美好的事情. Spring也不是一个漂亮的服务定位器.这也使单元测试变得更加困难,因为您松开了一些非常好的松散耦合. (您通过这种方式拧紧联轴器)

IMO仅凭这些论点就足以转换.我什至不会开始谈论性能,其他人已经指出,除非您处于紧密的循环中,否则不太可能.

从好的方面来说,您可能真的很容易转换为spring注释,这可能是代码原始作者未执行“正确” spring的原因.他不喜欢所有的xml.使用注释,您不需要所有的xml.

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...