【发布时间】:2014-12-18 21:10:15
【问题描述】:
我在 webapp 中工作,这是我第一次使用基于 Java 的配置。我有一堆类要全部配置:
- 应用程序上下文
- PersistenceContext
- 安全上下文
- WebAppInitializer
- WebMvcContext
现在我正在定义 Spring Data 存储库和服务层,因此我需要在其中注入存储库。通常我会使用 Autowired 但我读过它is preferable to define the injections manually 所以问题是,在哪里?
也许以前的配置类都不适合这样的任务,但是,我是否必须创建一个类来定义所有注入,或者更好地为每个功能都启用?如果项目增长过多会怎样?
我认为主要问题是在 Spring 项目中组织依赖项的最佳方式是什么。你是做什么的?
我在此处添加项目结构的图像作为请愿书。我正在尝试解耦层,现在我需要将 UserRepository 注入到 UserService。
【问题讨论】:
-
你能添加一些示例代码吗?它有助于展示您正在尝试的内容。
-
请链接到但我已经读到最好手动定义注入或添加一些上下文。
-
我添加了链接。很抱歉。
-
@superbAfterSemperPhi 我添加了一个带有项目结构的图像。希望对您有所帮助。
-
反对自动装配的建议已经过时。当您只拥有 XML 时,自动装配确实会造成困难,但是通过注释,您总是可以清楚地看到被自动装配的属性的类型。
@Qualifier
很好地解决了按类型自动装配不起作用的罕见情况。
标签: java spring spring-mvc dependency-injection spring-data-jpa