常用地址的写法:
绝对路径:以/开头的路径就叫做绝对路径,绝对路径在相对于的路径上直接拼接得到最终的路径
相对路径:不以/开头的路径就叫做相对路径,相对路径基于当前所在的路径计算的到最终的路径
硬盘路径:以盘符开头的路径就叫做硬盘路径.是哪个路径就是哪个路径.没有相对于谁的问题
虚拟路径: --写虚拟路径时都使用绝对路径
如果路径是给浏览器用的,这个路径相对于虚拟主机,所以需要写上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();
真实路径: --写真实路径时都使用相对路径
根据原理,具体问题具体分析
servletContext.getRealPath("config.properties");//--给一个相对于web应用目录的路径
classLoader.getResource("../../config.properties");//--给一个相对于类加载目录的路径
//Day04/WEB-INF/classes/config.properties(看看类加载目录在哪)
File file = new File("config.properties");//--相对于程序的启动目录(如果是Tomcat,则是tomcat的bin目录,如果是Java程序,则是Java程序的根目录)
new InputStream("config.properties");//--相对于程序的启动目录
!我思所得:写路径时先判断是虚拟路径(应该是如果地址给的是服务器或者是浏览器的路径)还是真实路径
如果是虚拟路径判断是给浏览器用的还是给服务器用的,浏览器用的,这个路径相对于虚拟主机,
所以需要写上web应用的名称;如果是给服务器用的,这个路径相对于web应用,所以可以省
写web应用的名称
真实路径根据原理分析:如上面所示
关于Javaweb路径问题
最新推荐文章于 2021-09-14 18:05:33 发布