我正在尝试更新旧的 Guice 应用程序,我想知道在考虑 Servlet 3.0 注释时是否有任何首选的做事方式。例如,我的应用程序有一个过滤器FooFilter,它是在Guice Module Factory方法configureServlets()中定义的,如下:
Map<String, String> fooParams = new HashMap<String, String>();
fooParams.put("someParam", "parameter information");
filter("/foo.jsp","/foo/*").through(com.example.filter.FooFilter.class, fooParams);
上面的绑定是否仍然必要,或者它会干扰使用@WebFilter Servlet 3.0 注释的以下内容:
@Singleton
@WebFilter(
filterName="FooFilter",
urlPatterns={"/foo.jsp", "/foo/*"},
initParams = {
@WebInitParam(name="foo", value="Hello "),
@WebInitParam(name="bar", value=" World!")
})
public class FooFilter implements Filter {
etc....
现在首选哪种方法?他们会互相纠缠吗?