可以使用ServletRegistration.Dynamic配置什么?

时间:2013-05-27 14:46:16

标签: java servlets listener

关于Java认证1Z0-899的问题 我必须选择两个答案。

问题是:

  

ServletRegistration.Dynamic可用于配置:

     

A)过滤器映射
  B)添加init参数
  C)将asyncSupported设置为true
  D)添加听众


我认为这应该是正确的B,C。但我的文字说A,B 谁是对的?

2 个答案:

答案 0 :(得分:4)

A)配置您可以使用的过滤器映射 FilterRegistration.Dynamic.addMappingForServletNames(java.util.EnumSet dispatcherTypes, boolean b, java.lang.String... strings)FilterRegistration.Dynamic.(java.util.EnumSet dispatcherTypes, boolean b, java.lang.String... strings)

B)添加initParams - ServletRegistration.Dynamic.setInitParameter(java.lang.String s, java.lang.String s1)ServletRegistration.Dynamic. setInitParameters(java.util.Map stringStringMap)

C)将asyncSupported设置为true ServletRegistration.Dynamic.setAsyncSupported(boolean b)

D)添加ServletContext.addListener(T t)

的听众

这意味着严格的答案是B和C

答案 1 :(得分:1)

来自Servlet Context 3.0的规范第31页:

  

4.4.1以编程方式添加和配置Servlet

     

以编程方式将servlet添加到上下文的功能非常有用   对于框架开发人员例如,框架可以声明一个   控制器servlet使用这种方法。此方法的返回值   是一个ServletRegistration或一个ServletRegistration.Dynamic对象   进一步允许您设置servlet的其他参数   init-params,url-mappings等。有三个重载版本   如下所述的方法。

你可以看到他们提到了init-params和url-mappings。

所以也许是谁创建这个问题/答案选择这个文本:),而且ServletRegistration.Dynamic用于配置你的servlet创建或通过Servlet Context以编程方式添加它,如添加映射,init-param和设置security-constraints属性...

谢谢