Java guice中的作用域注释是什么意思?
有人可以举个例子来解释它是如何工作的吗? 我看到这样的例子:
@Singleton
class Log {
void log(String message) { ... }
}
但是单例与作用域无关,对吧?
谢谢!!!
最佳答案
Scopes allow you to reuse instances: for the lifetime of an application (@Singleton), a session (@SessionScoped), or a request (@RequestScoped).
http://code.google.com/p/google-guice/wiki/Scopes
这意味着,如果您的类使用 Singleton 进行注释,则只会从该类实例化一个对象,每次您使用这种绑定(bind)时都会注入(inject)该对象。
当您使用 @RequestScoped 时,每个请求每次都会获得新对象
关于java - 什么时候应该使用范围注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17160206/