servlet中地址详细分析

path路径的写法

假设;

  项目名为day01

   webroot下存放静态文件demo.html

转发

request.getRequestDispatcherType("path").forward(request,response); //path=/demo.html

重定向

response.sendRedirect("path"); //path=/day01/demo.html

html中的url

<html>

  <head><title></title></head>

  <body><a href='path'>超链接</a></body> //path=/day01/demo.html

</html>

form表单的action中的提交地址

<html>

  <head><title></title></head>

  <body><form action="path"></form></body> //path=/day01/demo.html

</html>

总结:

  目标资源是给谁用的

      1,tomcat服务器 /代表的是当前web项目的根目录('就是root目录下'),可以直接写写上静态资源名

      2,浏览器/代表的是webapps下面所以要加上项目名再加静态资源名

注意:web 项目的根目录是指项目名,然而项目在部署到tomcat服务器上面的时候会把项目拷贝到webapps下面 , webroot下面的文件夹及文件直接拷贝到项目地下webroot被覆盖目录结构如下图

项目工作目录

  

本地文件目录(无webroot目录

  

加载外部资源

  见servletcontext与servletconfig中

原文地址:https://www.cnblogs.com/hello-liyb/p/7704307.html