这是一个我想要理解的非常基本的问题。
我在端口8080上运行Fresh Apache tomcat服务器,当我输入URL http://localhost:8080
时,我看到浏览器向tomcat发送以下请求。
GET / HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
我在Content-type:text/html
我的问题:
1)当tomcat服务器收到此/
请求时,GET
请求的GET
参数如何映射到上面的html页面作为tomcat端的响应?这与tomcat / conf / web.xml中的下面的xml元素有关吗?收到此请求后,tomcat端的流量是多少?
<!-- The mapping for the default servlet -->
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
答案 0 :(得分:2)
直接从Apache Tomcat 7的官方文档中了解有关以下部分的更多信息:
您可以帮助您理解url-pattern
请求可以匹配给定上下文中的多个servlet映射。 servlet容器使用简单的匹配过程来确定最佳匹配。
匹配程序有四个简单规则。
首先,容器优先于通配符路径匹配精确路径匹配。
其次,容器更喜欢匹配最长模式。
第三,容器首选路径匹配文件类型匹配。
最后,模式<url-pattern>/</url-pattern>
始终匹配任何其他模式不匹配的请求。
查看我的帖子How does a servlets filter identify next destination is another filter or a servlet/jsp?,了解详细说明,以便直观地了解它。
答案 1 :(得分:1)
正确。这就是这个web.xml.this是Java Web应用程序中最重要的文件之一.GET的/ paramter由一个内置的servlet映射。为了更好地理解这一点,你需要学习一点JSP / Servlet的事情