[英]Spring auto inject with constructor via code or annotations
给定下课:
因此,我必须在运行时初始化XProcessor以获取将在XRepository构造函数中使用的特定值。 在不同的调用上,我将有不同的参数,因此注入应在运行时进行。 任何想法如何使用代码配置或注释来实现?
请记住,Spring需要注入Spring托管bean的所有构造函数参数。
我相信您有两种选择:
您的情况可以使用request
范围bean来解决。 您将这样创建一个bean:
@Component @Scope("request") public class { private String urlPart; }
然后,您可以将该组件自动连接到XProcessor
和XRepository
。 对应用程序的每个请求都将创建XRequestContext
新实例,您将在XProcessor
解析您的信息并将其存储到XRequestContext
。
在XRepository
您将使用XRequestContext
实例来检索存储在XProcessor
。
您可以在Spring docs中了解有关请求范围的信息。 就像每个请求线程的ThreadLocal一样。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.