JavaWeb路径

客户端路径和服务器端路径

  • 客户端路径需要给出应用名称,例如:/day05_1/AServlet
  • 服务器端路径无需给出应用名称,例如:/AServlet

客户端路径(需添加项目名)

页面中都是客户端路径:

  • 超链接的href

  • 表单的action

  • <img>的src

  • 重定向也是客户端路径:response.sendRedirect("/day05_1/BServlet");

 

重定向路径(客户端路径)

以“/”开头:相对当前主机,例如:http://localhost:8080/, 
所以需要自己手动添加项目名,例如;response.sendRedirect("/重定向项目名/Bservlet");

 

页面中超链接和表单路径

与重定向相同,都是客户端路径!需要添加项目名

 <form action="/day10_1/AServlet">
 <a href="/day10_/AServlet">

<a href="AServlet">,如果不以“/”开头,那么相对当前页面所在路径。如果是
http://localhost:8080/day10_1/html/form.html
即:http://localhost:8080/day10_1/html/ASevlet

建立使用以“/”开头的路径,即绝对路径!
 
 
 
 
 
 

服务器端路径(项目内,无需添加项目名)

  • <url-pattern> (Servlet路径)
  • 请求转发和请求包含
  • ServletContext获取资源等

 
 

Servlet路径

web.xml中<url-pattern>路径,(叫它Servlet路径!)

要么以“*”开关 (慎用)
要么为“/”开头 (推荐

 
 

转发和包含路径

以“/”开头:相对当前项目路径,例如:http://localhost:8080/项目名/  request.getRequestdispacher("/BServlet").forward(); (推荐)

不以“/”开头:相对当前Servlet路径。 request.getRequestdispacher("/BServlet").forward();,
假如当前Servlet是:http://localhost:8080/项目名/servlet/AServlet, 
就是http://localhost:8080/项目名/servlet/BServlet

 
 

ServletContext获取资源路径

相对当前项目目录,即当然index.jsp所在目录

ClassLoader获取资源路径(类加载器)

相对classes目录,不能以/开头
任何一个类得到ClassLoader : xxx.class.getClassLoader();

Class获取资源路径

以“/”开头相对classes目录
不以“/”开头相对当前.class文件所在目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值