Java 我应该始终让Spring容器管理我的对象吗?

Java 我应该始终让Spring容器管理我的对象吗?,java,spring,dependency-injection,Java,Spring,Dependency Injection,我使用Spring已经有一段时间了,尽管我开始喜欢它,但有一件事让我感到非常困惑。有些情况下,当我需要一个Springbean时,我可以使对象变得更复杂。那个么,有并没有什么好的规则来决定是否应该注入对象呢 我现在正在研究的示例: 我有一个使用openScada utgard库的OPC客户端bean和包含连接设置的单独bean。要开始从apc服务器读取数据,我必须创建server实例,并将server实例传递给它的构造函数SyncAccess实例。我可以将它们创建为bean,但在这种情况下,它似

我使用Spring已经有一段时间了,尽管我开始喜欢它,但有一件事让我感到非常困惑。有些情况下,当我需要一个Springbean时,我可以使对象变得更复杂。那个么,有并没有什么好的规则来决定是否应该注入对象呢

我现在正在研究的示例:


我有一个使用openScada utgard库的OPC客户端bean和包含连接设置的单独bean。要开始从apc服务器读取数据,我必须创建
server
实例,并将
server
实例传递给它的构造函数
SyncAccess
实例。我可以将它们创建为bean,但在这种情况下,它似乎没有给mu带来太多的优势。

一般来说,将某个东西制作成bean可以让您在多个地方使用它,无论是使用
@Autowired
还是将它作为声明属性注入另一个bean。您还可以轻松地定义其范围(例如,singleton vs prototype)

如果你知道没有其他东西会使用你的连接设置,你就不必使用它,但是如果有机会重新使用,你最好现在就花点时间,而不是以后再重新工作(或者更糟的是,复制/粘贴)