Servlet-spec:<context-param> vs weblog中的<env-entry>?

mer*_*ike 10 servlets jndi context-param

为什么Servlet规范定义了两种不同的方式(上下文参数和环境条目)来为Web应用程序提供配置参数?

这些方法各自的优点是什么(什么时候应该优先选择)?

Bal*_*usC 17

环境条目可通过JNDI获得,当您没有ServletContext直接操作时可能很有用,例如在EJB中.在一个web.xml实际上是最后优先链为overridding环境entires.它们通常在服务器自己的配置中定义.因此,如果打算从webapp上覆盖服务器指定的环境条目,那么可以通过web.xml.

上下文参数确实特定于webapp本身.他们是唯一可用的,当你有一个ServletContext在手直接,通常只有内部过滤器,servlet的(和本质上也JSP中通过${initParam.someName}EL)和听众.它们应该用于为web应用程序中运行的过滤器,servlet和/或监听器提供配置参数.由JNDI提供它们没有多大意义,JNDI是一个简单过程的简单过程.