我正在使用spring框架进行依赖注入,但我根本找不到,如果我正确使用它。想象一下这个案例 - 它不是真实的,只是为了解释我的问题。我有一个spring boot应用程序,它连接websocket到一些端点。我有一个类,它拥有该客户端的所有可用方法,存储客户端等所有需要的数据,比方说Client
。然后我有一个静态列表,其中包含所有连接的客户端List<Client>
。我需要Client
类是Spring托管bean,因为我需要使用@Service
和所有其他spring函数(@Value
,@Async
)等。
问题是,春豆是单身吗?如何从一个应该是spring管理的类中实例化then对象,但另一方面应该有这个类的多个实例?我不能正确使用new
吗?
答案 0 :(得分:2)
春天创造的物体不一定是单身;这只是默认值。 Spring支持各种不同的选项,用于确定何时创建新对象而不是旧对象被回收。您应该查看“范围”属性的文档,并确定最适合您的应用程序的内容。
或者,您可以使用new自己创建对象,然后请求Spring使用http://docs.spring.io/spring/docs/current/spring-framework-reference/html/aop.html#aop-atconfigurable
中描述的技术为您配置它