这更像是一个最佳实践类型的问题。Spring Autowiring,我只有一个实现,我应该autowire?如果是这样,我应该自动发布实施?
我听说过几十次说:
一)在Spring自动装配时,它是自动装配界面“不”实施最佳实践。
和..
B)我还听说,如果你只有“一”实施,那么你真的不应该是使用的接口。
这是我的困境,我有一个接口'MyService'和一个执行MyServiceImpl
。我使用@Autowiredz MyService in
MyController`并在'MyServiceTest'中。
我不需要另一个实现。
显然这违反了规则b),但自动装配的实现将违反规则a)。
所以我的问题是......我该怎么办?在这种情况下,我应该选择不使用Spring,只是使用new关键字实例化'MyService'?
不要使用新的关键字!如果您使用新的关键字,则该服务不再处于春天的环境中。 – Patrick
谢谢,那么在这种情况下最好的做法是什么?完全失去接口并仅实现自动连接?或者保持它与自动装配界面一样(即使我只有一个实现?)。 –