web工程各类URL地址的写法
来源:互联网 发布:中信银行安全控件mac 编辑:程序博客网 时间:2024/04/30 18:43
IT程序员开发必备-各类资源下载清单,史上最全IT资源,个人收藏总结!
一、绝对路径:
对于书写绝对路径的URL,首先先写个" / ",然后在看,这个URL是给服务器用的,还是客户端浏览器用的,如果是给服务器用的,则" / "代表当前应用(如这里的RequestAndResponse);如果是给客户端浏览器用的,则" / "代表当前站点(如这里的http://localhost:8080/);
对于web工程下的URL大致可分为一下几种:
工程目录结构图:
package edu.request;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class UrlServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//1.转发类型:(给服务器用的地址)//request.getRequestDispatcher("/page/test1.jsp").forward(request, response);//ok//request.getRequestDispatcher("page/test1.jsp").forward(request, response);//ok//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");//ok//response.sendRedirect("/RequestAndResponse/page/test1.jsp");//ok//3.获取资源真实路径:(给服务器用的)response.setHeader("Content-Type", "text/html;charset=utf-8");OutputStream out = response.getOutputStream();//String path = this.getServletContext().getRealPath("/page/test1.jsp");//ok: E:\赛杰\工程空间workspace\jsp_方立勋\.metadata\.me_tcat\webapps\RequestAndResponse\page\test1.jsp//String path = this.getServletContext().getRealPath("page/test1.jsp"); //ok: E:\赛杰\工程空间workspace\jsp_方立勋\.metadata\.me_tcat\webapps\RequestAndResponse\page\test1.jsp//String path = this.getServletContext().getRealPath("/RequestAndResponse/page/test1.jsp");//错误地址:E:\赛杰\工程空间workspace\jsp_方立勋\.metadata\.me_tcat\webapps\RequestAndResponse\RequestAndResponse\page\test1.jsp//out.write(path.getBytes("utf-8")); //4.获取资源文件输入流对象:(给服务器用的)//InputStream in = this.getServletContext().getResourceAsStream("/page/test1.jsp");//ok:正确输出test1.jsp页面InputStream in = this.getServletContext().getResourceAsStream("page/test1.jsp");//ok:正确输出test1.jsp页面//InputStream in = this.getServletContext().getResourceAsStream("/RequestAndResponse/page/test1.jsp");//java.lang.NullPointerException 代码1处int len = 0; byte buffer[] = new byte[1024]; while((len=in.read(buffer))>0){ //代码1 out.write(buffer,0,len); } in.close();}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {}}
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>My JSP 'test2.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> 5. 给客户端浏览器用的地址--<form action="">类型<br> 表单1: <form action="/page/test1.jsp"> <input type="text" name="username" value="中国"> <input type="submit" value="提交" name="button"> (action="/page/test1.jsp" 地址错误) </form> <br> 表单2: <form action="page/test1.jsp"> <input type="text" name="username" value="中国"> <input type="submit" value="提交" name="button"> (action="page/test1.jsp" 地址正确) </form> <br> 表单3: <form action="/RequestAndResponse/page/test1.jsp"> <input type="text" name="username" value="中国"> <input type="submit" value="提交" name="button"> (action="/RequestAndResponse/page/test1.jsp" 地址正确) </form> <br> 表单4: <form action="../page/test1.jsp"> <input type="text" name="username" value="中国"> <input type="submit" value="提交" name="button"> (action="../page/test1.jsp" 地址错误,跳转至http://localhost:8080/page/test1.jsp) </form> <br> 6. 给客户端浏览器用的地址--<a href="">类型<br> <a href="/page/test1.jsp">连接1(href="/page/test1.jsp" 地址错误)</a><p> <a href="page/test1.jsp">连接2(href="page/test1.jsp" 地址正确)</a><p> <a href="/RequestAndResponse/page/test1.jsp">连接3(href="/RequestAndResponse/page/test1.jsp" 地址正确)</a> <p> <a href="../page/test1.jsp">连接4(href="../page/test1.jsp" 地址错误,跳转至http://localhost:8080/page/test1.jsp)</a><p> </body></html>
上面页面访问效果:
二、相对路径
- web工程各类URL地址的写法
- web工程中各类地址的写法
- web工程中各类地址的写法
- Web工程中各类地址的写法
- web工程中各类地址的写法
- web工程中各类地址的写法以及url,href,src的区别
- //web工程中URL地址的写法
- web工程中url地址的写法
- javaweb_16-web工程中各类地址的写法
- javaweb之web工程中各类地址的写法
- web工程中各类路径的写法
- web开发中各类地址的写法
- web工程中地址的写法
- web工程地址惯用写法
- web地址的写法
- web工程中url地址的使用-----读书笔记
- javaweb-day06-2&3 (Servlet - Response - 输出随机图片、请求重定向、web工程的URL地址写法、getOutputStream和getWriter互斥)
- web地址的写法分析
- jQuery常见开发技巧总结
- CABasicAnimation 如何解决保持移动后的位置状态不变
- 传世单机 设置GM账号
- double输出
- sip rport 机制
- web工程各类URL地址的写法
- windows下Qt5安装使用
- 传世单机 GM命令 查看所有GM命令 自定义游戏命令
- 使用手机拍摄悬浮照片的教程
- 替换文本中的特殊字符
- 为Raspbian 换更新源 sources.list
- 毕业设计(六)---数据库初步设计(数据库所有表,后续有更改)
- 如何在OS X 10.7上开发一个简单的应用教程(一)
- 直接插入排序