我有一个项目...我不知道...200-300 daos/服务/ Controller ,我使用 @Autowired
将所有内容连接在一起,而不是在 中指定所有内容applicationContext.xml
.
我的问题是,这对我的启动时间有多大的性能影响?删除所有 @Autowired
注释并通过 applicationContext.xml
手动连接此应用程序是否值得?
从架构的角度来看,我喜欢@Autowired
。我不想通过使用 xml 文件来增加另一层复杂性 - 就我而言,它没有增加任何值(value)。但如果这种事情让我的容器加载时间增加 10 秒,我可能会考虑。如果成本是 100 毫秒,那么我将保持原样。
谢谢
最佳答案
实际上是一样的。组件扫描有点昂贵(当您扫描 @Service
、@Component
时),但是,正如您所说,它是启动时间 - 它只发生一次。在中型机器上,即使有注释,它也能很快启动。
一般来说,我不会仅仅因为它增加了一些启动时间就放弃了这种方法。我可以向你保证这没什么大不了的(正在做一个比你现在更大的项目)
关于java - Spring 的@Autowired 是一个巨大的性能问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8249458/