重新学javaweb---路径专题

绝对路径:以/开头的路径就叫做绝对路径,绝对路径在相对于的路径上直接拼接得到最终的路径
相对路径:不以/开头的路径就叫做相对路径,相对路径基于当前所在的路径计算的到最终的路径
硬盘路径:以盘符开头的路径就叫做硬盘路径.是哪个路径就是哪个路径.没有相对于谁的问题

虚拟路径: –写虚拟路径时都使用绝对路径
如果路径是给浏览器用的,这个路径相对于虚拟主机,所以需要写上web应用的名称
如果路径是个服务器用的,这个路径相对于web应用,所以可以省写web应用的名称
< a href=”/Day04/…..”>
< form action=”/Day04/…”>
< img src=”/Day04/….”>
response.setHeader(“Location”,”/Day04/….”);
response.setHeader(“refresh”,”3;url=/Day04/…”);
response.sendRedirect(“/Day04/…”);
request.getRequestDispathce(“/index.jsp”).forward();
request.getRequestDispathce(“/index.jsp”).include();

Servlet可以通过两个两种方式得到RequestDispatcher对象:

  • 调用ServletContext的getRequestDispatcher(String path)方法,path参数指定目标组件的路径
    path参数必须为绝对路径;绝对路径,就是以符号“/”开头的路径,“/”表示当前Web应用的URL路口
  • 调用ServletRequest的getRequestDispatcher(String path)方法,path参数指定目标组件的路径
    path参数既可以为绝对路径,也可以为相对路径;相对路径,就是相对于当前Servlet组件的路径,不以“/”开头

    真实路径: –写真实路径时都使用相对路径
    根据原理,具体问题具体分析

    servletContext.getRealPath(“config.properties”);//–给一个相对于web应用目录的路径
    classLoader.getResource(“../../config.properties”);//–给一个相对于类加载目录的路径

    File file = new File(“config.properties”);//–相对于程序的启动目录
    new InputStream(“config.properties”);//–相对于程序的启动目录
    前两个加/也行 后两个加/就到该盘的根目录去找了

这里写图片描述

Class.getResource(String path)

path 不以’/’开头时,默认是从此类所在的包下取资源;以’/’开头时,则是从ClassPath根下获取;

同样用法的还有Class.getResource和Class.getResourceAsStream。
Class.getClassLoader().getResource(String path)

path 不能以’/’开头并且它是从ClassPath根目录下获取;

同样用法的还有Class.getClassLoader().getResource和Class.getClassLoader().getResourceAsStream。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值