例如,我们如何在Guice中使用非单一servlet或处理程序,我想为每个请求创建新实例,然后立即销毁它或在处理该请求后将其交给垃圾收集器。
我不想将ii作为单例保留在内存中,也可以将其重用于其他将来的请求。
我想可能是通过使用bind()函数,
RGDS
最佳答案
您要use RequestScope。
我通常将提供程序方法与范围一起使用,因此您的代码看起来像
public class FooModule extends AbstractModule {
@Override protected void configure() {
// set up bindings
}
@Provides
@RequestScoped
PerRequestObject providePerRequestObject() {
return new PerRequestObject(...);
}
}
请确保install
ServletModule
和setup the GuiceFilter
否则将不起作用!