我是 Spring 和 Dependancy Injection 的新手,所以我会尽力而为,但这个问题可能并不完美。
简而言之,想象一个包含“奶酪”组件的“三明治”程序。瑞士奶酪和普罗瓦龙奶酪都适合接口,因此它们都可以用于我们的三明治。我们的代码可能看起来像这样。
class Sandwich{
@Autowired
Meat m;
@Autowired
Cheese c;
}
@Component
class Ham implements Meat{
}
@Component
class Swiss implements Cheese{
}
@Component
class Provolone implements Cheese{
}
很明显spring框架会用火腿做肉;它是唯一的肉类成分。但是spring框架在瑞士和provolone之间是如何选择的呢?程序员是否需要进一步设置?如果是这样,这怎么不是紧耦合?
谢谢(你的)信息!这种企业级编码对我来说是新的(而且有点吓人),所以任何输入都会受到赞赏。