博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Web工程下URL地址,有斜杠与没有斜杠路径的区别及使用
阅读量:2506 次
发布时间:2019-05-11

本文共 2769 字,大约阅读时间需要 9 分钟。

对于Web工程下URL地址,有两种写法: ① 绝对路径(“以’/ '开头的路径”) ② 相对路径(”不以’/ '开头的路径“)

对于绝对路径的URL(“以’/ '开头的路径”)需要根据这个URL是给服务器用的,还是客户端浏览器用的。

  • ① 如果是给服务器用的,则"/"代表当前应用(如这里的RequestAndResponse或者是你的web项目路径WebContent、WebRoot);
  • ② 如果是给客户端浏览器用的,则"/"代表当前站点(如这里的http://localhost:8080/或者是tomcat下的> webapps);

例子:

public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {		//1.转发类型:(给服务器用的地址)		//request.getRequestDispatcher("/page/test1.jsp").forward(request, response);//正确		//request.getRequestDispatcher("page/test1.jsp").forward(request, response);//相对于当前web项目 正确		//request.getRequestDispatcher("/RequestAndResponse/page/test1.jsp").forward(request, response);  //HTTP Status 404 - /RequestAndResponse/RequestAndResponse/page/test1.jsp    //2.重定向类型:(给浏览器用的地址)	//response.sendRedirect("/page/test1.jsp");//error: http://localhost:8080/page/test1.jsp	//response.sendRedirect("page/test1.jsp");//正确	//response.sendRedirect("/RequestAndResponse/page/test1.jsp");//正确	//3.获取资源真实路径:(给服务器用的)	response.setHeader("Content-Type", "text/html;charset=utf-8");	OutputStream out = response.getOutputStream();	String path = this.getServletContext().getRealPath("/page/test1.jsp");//(1)正确: 	    String path = this.getServletContext().getRealPath("page/test1.jsp"); //(2)正确: 	    String path = this.getServletContext().getRealPath("/RequestAndResponse/page/test1.jsp");//(3)错误地址得到的是:E:\workspace\jsp\.metadata\.me_tcat\webapps\RequestAndResponse\RequestAndResponse\page\test1.jsp			//4.获取资源文件输入流对象:(给服务器用的)     InputStream in = this.getServletContext().getResourceAsStream("/page/test1.jsp");//正确:正确输出test1.jsp页面		InputStream in = this.getServletContext().getResourceAsStream("page/test1.jsp");//正确:正确输出test1.jsp页面	InputStream in = this.getServletContext().getResourceAsStream("/RequestAndResponse/page/test1.jsp");//错误java.lang.NullPointerException;	}
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%> My JSP 'test2.jsp' starting page
5. 给客户端浏览器用的地址-form action="">类型
表单1:
(action="/page/test1.jsp" 地址错误=localhost:8080/page/test1.jsp)
表单2:
(action="page/test1.jsp" 地址正确)
表单3:
(action="/RequestAndResponse/page/test1.jsp" 地址正确)
表单4:
(action="../page/test1.jsp" 地址错误,跳转至http://localhost:8080/page/test1.jsp)
6. 给客户端浏览器用的地址 a标签 连接1(href="/page/test1.jsp" 地址错误)

连接2(href="page/test1.jsp" 地址正确)

连接3(href="/RequestAndResponse/page/test1.jsp" 地址正确)

连接4(href="../page/test1.jsp" 地址错误,跳转至http://localhost:8080/page/test1.jsp)

无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。可以跳转到教程

转载地址:http://hwmgb.baihongyu.com/

你可能感兴趣的文章
Java中的线程Thread方法之---suspend()和resume() 分类: ...
查看>>
经典排序算法回顾:选择排序,快速排序
查看>>
BZOJ2213 [Poi2011]Difference 【乱搞】
查看>>
c# 对加密的MP4文件进行解密
查看>>
Flask 四种响应类型
查看>>
AOP面向切面编程C#实例
查看>>
怎么让win7右下角只显示时间不显示日期 ?(可行)
查看>>
AngularJs学习笔记-慕课网AngularJS实战
查看>>
数据库三大范式
查看>>
工作总结之二:bug级别、优先级别、bug状态
查看>>
访问修饰符、封装、继承
查看>>
更换pip源到国内镜像,提升pip下载速度.
查看>>
POJ 2265 Bee Maja (找规律)
查看>>
Kendo MVVM 数据绑定(七) Invisible/Visible
查看>>
DB Intro - MySQL and MongoDB
查看>>
Practical Mathematical Handwriting
查看>>
[zz]kvm环境使用libvirt创建虚拟机
查看>>
bzoj1059 [ZJOI2007]矩阵游戏
查看>>
JDK配置步骤
查看>>
springcloud微服务实战--笔记
查看>>