在java Web应用程序中,有一个名为web.xml的文件,它有一个版本控制.
究竟是什么?它是干什么用的?
这是web.xml的SO wiki.但它并没有真正解释我.
它允许您在Web应用程序中定义,声明和配置基于Servlet API的实现,例如servlet,过滤器和侦听器.
有人可以用简单的例子来解释这个吗?
谢谢.
编辑:
示例web.xml版本控制:
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
Run Code Online (Sandbox Code Playgroud)
Mil*_*kic 32
Web.xml
是您定义Web应用程序配置的中心位置.例如,您可以在那里指定:
我还建议研究Servlet 3.0规范,其中许多参数可以通过注释设置.
版本控制是指XML模式版本,您的web.xml
文件的语法必须遵守.更重要的是,它还指示应用程序实现的Servlet规范的版本.web.xml
应该如何开始遵循Servlet 3.0的示例:
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
Run Code Online (Sandbox Code Playgroud)
大多数IDE将自动生成该部分web.xml
.如果您出于某种原因要手动更改它,请小心匹配web-app和xsd的版本 - 请参阅此答案.
有关具体示例web.xml
,请参阅:
从 Servlet 3.0 开始,Web.xml 是可选的,您可以使用@WebServlet
注解代替。
如果您使用的是 Spring,org.springframework.web.WebApplicationInitializer
则可以代替使用或与web.xml一起使用。
WebApplicationInitializer :
在 Servlet 3.0+ 环境中实现的接口,以便以编程方式配置 ServletContext —— 与传统的基于 web.xml 的方法相反(或可能结合)。
回答您的以下问题。
它有什么影响?(在 Spring 应用程序中)
web.xml 版本控制:
但是,如果WEB-INF/web.xml
应用程序中存在,则其版本属性必须设置为 "3.0" 或更高版本,否则servlet 容器ServletContainerInitializer
将忽略引导。
您可以在此处阅读 WebApplicationInitializer 的完整 Java 文档。
归档时间: |
|
查看次数: |
38673 次 |
最近记录: |