cal*_*i77 5 java architecture spring
从软件设计的角度来看,什么时候应该使用@Component而不是传统的Java类(需要通过“ new”显式实例化)?例如,如果我们需要创建以下模式之一的类:
适配器
桥
正面
战略
译者
类是否应该具有@Component注释(或任何Spring衍生注释,例如@Repository/ @Controller/ @Service)?
小智 5
Spring 应用了控制反转原则,该原则深入到框架为您处理内容,因此您不必担心它。
通过@Component在类上使用,您可以让 Spring 为您创建一个 bean。这样,Spring 就可以在您需要时在运行时注入此 bean。(例如通过自动装配您的构造函数)。
您可以决定是否要在您的班级中使用此功能。例如,Facade 很可能是一个 Spring 组件,这样您就可以注入一个在运行时通过 Facade 公开的 API 实现,而无需考虑依赖注入实现。
例如,我不建议在 DTO 或模型类上使用此注释。这些类主要由数据组成,不适合Spring管理的需要。
其他有趣的相关问题可以帮助您决定何时创建组件:
Spring 中的 @Component、@Repository 和 @Service 注释之间有什么区别?
| 归档时间: |
|
| 查看次数: |
259 次 |
| 最近记录: |