关于Servlet中相对路径和绝对路径归纳
2015-10-12 17:02
337 查看
response.sendRedirect("/ads/adList.html");
写的是绝对路径
/不表示根
RequestDispatcher
view = request.getRequestDispatcher("/abc.jsp");
RequestDispatcher view = request.getRequestDispatcher("abc.jsp");
或
<jsp:forward page="/abc.jsp"></jsp:forward>
这里可以使用相对路径和绝对路径。相对路径是当执行到该代码所在的Servlet的时候地址栏上显示的路径。
如果使用绝对路径,则"/"表示应用的根。
关于Servlet中相对路径和绝对路径归纳
<form action="abc.do" method="post">*********</form>
并且该页面的访问地址是http://localhost:8080/yaso/login
<form action="/abc.do" method="post">*********</form>
并且该页面的访问地址是http://localhost:8080/yaso/login
此处可以使用相对路径或者绝对路径,其中相对路径是相对于当前访问的页面。
当提交表单后,浏览器地址栏中的信息变为http://localhost:8080/yaso/abc.do
如果使用绝对路径,则"/"是指服务器的根而非应用的根。如果将上述表单改为action="/abc.do",则当提交表单后,浏览器地址栏中的信息变为http://localhost:8080/abc.do
如果要使用绝对路径可以使用getContextPath()方法。
2. 在web.xml中的中的标记中只能使用绝对路径,即必须要以"/"开头。可以这样理解:一个应用对应于一个web.xml,所以这里的绝对路径表示应用的根,而不是服务器的根。(一个特殊情况就是在中使用模式匹配的*.do,但仍然应该理解成从/开始。)
4.RequestDispatcher view = getServletContext().getRequestDispatcher("/abc.jsp");
这里必须使用绝对路径,"/"表示应用的根。可以这么理解:在ServletContext上调用请求转发,如果使用相对路径,则无法得知到底相对于该应用的什么位置,只能根据绝对路径来判断。由于是在应用上下文上调用的方法,所以"/"就表示应用的根。
5.servletContext中的getResourceAsStream(String),其中的参数应该是以"/"开头的绝对路径,其中"/"表示应用的根。
写的是绝对路径
/不表示根
RequestDispatcher
view = request.getRequestDispatcher("/abc.jsp");
RequestDispatcher view = request.getRequestDispatcher("abc.jsp");
或
<jsp:forward page="/abc.jsp"></jsp:forward>
这里可以使用相对路径和绝对路径。相对路径是当执行到该代码所在的Servlet的时候地址栏上显示的路径。
如果使用绝对路径,则"/"表示应用的根。
关于Servlet中相对路径和绝对路径归纳
<form action="abc.do" method="post">*********</form>
并且该页面的访问地址是http://localhost:8080/yaso/login
<form action="/abc.do" method="post">*********</form>
并且该页面的访问地址是http://localhost:8080/yaso/login
此处可以使用相对路径或者绝对路径,其中相对路径是相对于当前访问的页面。
当提交表单后,浏览器地址栏中的信息变为http://localhost:8080/yaso/abc.do
如果使用绝对路径,则"/"是指服务器的根而非应用的根。如果将上述表单改为action="/abc.do",则当提交表单后,浏览器地址栏中的信息变为http://localhost:8080/abc.do
如果要使用绝对路径可以使用getContextPath()方法。
2. 在web.xml中的中的标记中只能使用绝对路径,即必须要以"/"开头。可以这样理解:一个应用对应于一个web.xml,所以这里的绝对路径表示应用的根,而不是服务器的根。(一个特殊情况就是在中使用模式匹配的*.do,但仍然应该理解成从/开始。)
4.RequestDispatcher view = getServletContext().getRequestDispatcher("/abc.jsp");
这里必须使用绝对路径,"/"表示应用的根。可以这么理解:在ServletContext上调用请求转发,如果使用相对路径,则无法得知到底相对于该应用的什么位置,只能根据绝对路径来判断。由于是在应用上下文上调用的方法,所以"/"就表示应用的根。
5.servletContext中的getResourceAsStream(String),其中的参数应该是以"/"开头的绝对路径,其中"/"表示应用的根。
相关文章推荐
- C#中字符串转换为IPAdress
- EasyUI-datagrid-自动合并单元格(转)
- 队列数组
- swift tablevieCell自适应高度
- android中程序的执行顺序
- 基于数据驱动洪水预报方法总结
- 敏捷开发-基于JAVA POI 使用基础Excel解析
- 8_1 当fork遇上printf
- 第8周 项目4—字符串加密
- SpringMVC学习系列-后记 解决GET请求时中文乱码的问题
- Newtonsoft.Json(Json.Net)学习笔记
- 目录COPY
- 守卫农场阿波罗,大富翁
- 统计知识补充:方差,协方差,相关系数。
- 整理php操作memcache缓存为基础的方法
- 第七周--项目二--建立链队算法库
- java开发遇到的问题总结(二)
- 项目6 -- 停车场模拟
- 使用Bmob云端代码开发微信公众平台教程
- 第四周项目6--多项式求和