在我团队的代码库中,我看到一些类要么注入了所有参数(并且没有构造函数参数),要么没有注入任何内容。但是,我想知道如何在课堂上有些注入而有些不注入?例如:
@RequiredArgsConstructor(onConstructor = @__(@Inject))
public class HTTPWrapper {
private final HttpClient httpClient;
private final DatabaseClient databaseClient;
private String rootUrl;
private String defaultHeaders;
public HTTPWrapper( [what to put here?] ) {
... [and here?]
}
}
如果不清楚,我想要传入 String 的东西。
我看过这个:在构造函数中仅注入某些参数,但这与Java无关;其中一条评论讨论了 Java,但对我来说太模糊了,无法理解。
有关辅助注射的 Dagger 文档对此进行了专门介绍。
辅助注入是一种依赖注入 (DI) 模式,用于构造对象,其中一些参数可以由 DI 框架提供,而其他参数必须由用户在创建时传入(也称为“辅助”)。