首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将context-param元素替换为Servlet 3.0注释

将context-param元素替换为Servlet 3.0注释
EN

Stack Overflow用户
提问于 2011-11-02 01:06:01
回答 3查看 11.2K关注 0票数 13

给定:一个JavaEE5Web应用程序,它有一个web.xml,其中包含如下代码片段

代码语言:javascript
复制
<context-param>
    <description>c</description>
    <param-name>a</param-name>
    <param-value>b</param-value>
</context-param>

我需要做什么才能将上下文参数规范转换为基于注释的策略。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-02 02:06:32

您可以在javax.servlet.annotation包摘要中找到所有javax.servlet注释:

  • @HandlesTypes该注释用于声明ServletContainerInitializer可以使用的类类型。该注释在ServletSecurity注释内使用,以表示将被应用于在
    • @HandlesTypes annotation.
    • @HttpMethodConstraint内没有出现相应的ServletSecurity元素的所有ServletContainerInitializer协议方法的安全约束。该注释在ServletSecurity注释内使用,以表示对可以在HttpMethodConstraint类上指定的特定ServletSecurity协议ServletSecurity注释的安全约束,指示符合多部分/格式数据MIME type.
    • @ServletSecurityServlet的实例期望请求。此注释用于Servlet实现类,以指定由Servlet容器在HTTP协议上强制实施的安全约束。用于声明servlet parameter.
    • @WebListenerServlet注释。此注释用于ServletFilter实现类,以指定初始化the。此注释用于声明WebListener用于声明servlet的.
    • @WebServlet批注。

你看,没有什么比@WebContextParam更好的了。这也或多或少有意义;您将/可以在哪种类型的类上设置它?

一些依赖于上下文参数的基于Servlet的框架,例如JSF,也允许通过JNDI设置其中的一些参数。您可能想要研究一下这一点。或者,如果它涉及到本地代码,那么我会考虑@WebInitParam是否对您来说不是一个更可行的选择。

票数 9
EN

Stack Overflow用户

发布于 2012-10-20 05:49:08

如果你使用的是Tomcat,你可以使用context.xml中的参数标签,它的工作原理与web.xml中的上下文参数是一样的。因此,您可以使用@WebInitParam来捕获上下文变量。

http://tomcat.apache.org/tomcat-5.5-doc/config/context.html#Context_Parameters

票数 5
EN

Stack Overflow用户

发布于 2016-02-17 21:35:02

可以使用@WebServletContextListener指定servlet内容侦听器met数据。例如,

代码语言:javascript
复制
 @WebServletContextListener 

public class TestServletContextListener implements javax.servlet.ServletContextListener { 
    public void contextInitialized(ServletContextEvent sce) { 

    } 

    public void contextDestroyed(ServletContextEvent sce) { 
        .... 
    } 
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7970051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档