Sha*_*n H 3 java dependency-injection guice
我对 Guice 比较陌生,所以这可能是基本问题。看起来 Guice 可以选择要求显式绑定。要求显式绑定有什么明显的优势吗?有没有人在实践中经常使用这个选项?
小智 6
我们在实践中使用这个选项。我们使用 Guice 仅将我们的应用程序连接在一起,而不是用于任何类型的每个请求对象构造。因此,我们的大多数绑定都在单例范围内——例如,我们希望我们的业务逻辑和统计接口都在同一个持久层对象上工作。
在没有显式绑定的情况下,Guice 将尝试使用 JIT 绑定来满足注入点。这种绑定将在“无作用域”作用域中完成,它为每个注入点提供了一个新的对象实例。这几乎从来都不是我们想要的,并且会导致奇怪的运行时错误。强制显式绑定会迫使人们考虑并枚举每个绑定的范围。