web工程中URL地址的写法
在开发中我们不可避免的要碰到许多需要写URL地址的情况,这常常让我们感到头疼。下面笔者推荐一种简单的做法。URL地址分为绝对路径和相对路径两种。相对路径又分为相对资源路径和相对根路径。显然绝对路径在开发中是要禁用的。至于相对资源路径和相对根路径用哪个的问题,笔者推荐用相对根路径,相对资源路径容易引起混乱。笔者建议在web开发中通通使用相对根路径,即通通以"/"开头写URL地址。因为这样我们只需弄清楚"/"代表谁即可。可以简单的理解为"/"是给谁用的,就代表谁。给服务器用,代表web工程;给浏览器用就代表webapps。
package com.yyz.response; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; //web工程中URL地址的写法 public class ResponseDemo extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //servletContext,给服务器用,"/"代表web工程 this.getServletContext().getRealPath("/download/1.gif"); //forward,给服务器用,"/"代表web工程。 this.getServletContext().getRequestDispatcher("/register.html"); //sendRedirct,给浏览器用,"/"代表webapps。 response.sendRedirect("/test/register.html"); /** * 在register.html中要访问ResponseDemo.java,超链接的写法,给浏览器用,"/"代表webapps * <a href="/test/servlet/ResponseDemo"></a> */ } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } }
为了便于大家理解,下面附上Myeclipse下Package Explorer的结构图:
另外还有一个容易疑惑的地方,究竟使用"/"还是用"\\"。读取硬盘上的资源用"\\",处理URL资源用"/"。而服务器中的所有资源都是web资源,通通用"/"。但当我们读取硬盘上的一个文件时用"\\",如
FileInputStream in = new FileINputStream("c:\\ag\\sd")
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。