一、认识XML
XML是可扩展标记语言(EXtensible Markup Language),用于传输数据。
规则:
没有预定义标签,对大小写敏感且对元素出现的次序敏感,有且只有一个根元素。
web.xml的配置是必须的吗?答案是否定的。web.xml被用来初始化配置信息:welcom页面、servlet、servlet-mapping、filter、listener、启动加载级别 等。如果不需要的用到这些配置信息,可以不需要配置web.xml文件。但在大型web工程中,web.xml提供了了很大的方便。
二、详解
1、<?xml ?>头 声明了XML版本和所使用的字符编码集。
<?xml version="1.0" encoding="UTF-8"?>
2、< web-app>< /web-app> 是部署描述的根元素,该元素有23个子元素,要求子元素必须安指定顺序出现。
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
</web-app>
3、指定欢迎页面(访问网站时默认看到的第一个页面,一般由首页充当欢迎页面)。
<welcome-file-list>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index1.jsp</welcome-file>
</welcome-file-list>
注: 欢迎页面访问规则:
1、配置了欢迎页面,就按照顺序访问,如果找到了第一个页面,就不再访问第二个欢迎页面。
2、没有配置欢迎页面或找不到欢迎页面,就会首先找index.html,如果找不到index.html,就找index.jsp,如果都找不到,就会显示
The requested resource (/XXX) is not available
4、命名和定制 URL
为Servlet和jsp文件 命名和并定制URL,命名必须在定制URL之前。
<!--给Servlet命名,Servlet类所在:包名.类名-->
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>org.whatisjava.TestServlet</servlet-class>
</servlet>
<!--servlet和servlet-mapping中的name要一样,url-->
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>