1)总体原则

在java web开发中,只要是url地址,那么最好以“/”开头,也就是绝对路径的方式。那么这个“/”到底代表什么呢?

如果“/”是给服务器用的,则代表当前web工程;如果是给浏览器用的,则代表webapps目录,webapps目录的/后面还得加上项目名

(2)给服务器用的场景

1.使用ServletContext获取资源的绝对路径

String realPath = this.getServletContext().getRealPath("/WEB-INF/测试图片.jpg");

也就是当前web项目的WebContent目录

2.请求转发

request.getRequestDispatcher("/index.html").forward(request, response);

(3)给浏览器使用的场景

1.请求重定向,因为重定向是客户端行为,是由浏览器发起请求,所以地址是webapps的,具体重定向的请求流程查看上一篇的文章介绍

response.sendRedirect("/LearnServlet/index.html");

因为/表示webapps目录,所以需要指定项目

2.页面超链接

<a href="/LearnServlet/index.html">跳转到首页</a>

这是浏览器使用的超链接,这个“/”是给浏览器用的,所以代表的是webapps目录,所以需要指定webapps目录

使用超链接为了避免出现项目名称,可以使用pageContext.request.contextPath来替换

String name = this.getServletContext().getContextPath();

3.form表单

<form action="/LearnServlet/FirstServlet" method="POST">
<input type="text" name="name"/ >
<input type="submit" name="submit"/>
</form>

理由类似上面的超链接。

Web工程中各类地址的写法的更多相关文章

  1. web工程中URL地址的写法

    在开发中我们不可避免的要碰到许多需要写URL地址的情况,这常常让我们感到头疼.下面笔者推荐一种简单的做法.URL地址分为绝对路径和相对路径两种.相对路径又分为相对资源路径和相对根路径.显然绝对路径在开 ...

  2. web工程中各类地址写法的总结

    首先打一个"/" //如果地址给服务器用,那么"/"就代表该web应用 , 如果给浏览器用的,那么"/"就代表网站(其下有多个web应用) ...

  3. web工程中URL地址的推荐写法

    三.web工程中URL地址的推荐写法 使用c标签<c:url value="" /> 会自动添加项目名 -> value中的值 前面要加 “/” 在JavaWeb ...

  4. JavaWeb工程中url地址的写法

    两种url地址: 1. "/"给服务器使用, 代表web工程根路径(webroot)2. "/"给浏览器使用, 代表tomcat 目录下的webapps文件夹 ...

  5. web工程中的各种路径(eclipse开发)

    目前遇到的 web 工程中要写url和路径的文件有 webContent中.jsp/.html :action src中的servlet类 : 映射地址.重定向.请求转发.访问资源文件(webCont ...

  6. 读取web工程中.properties资源文件的模板代码

    读取web工程中.properties资源文件的模板代码 // 读取web工程中.properties资源文件的模板代码 private void test2() throws IOException ...

  7. 如何在Web工程中实现任务计划调度

    转载自: http://www.oschina.net/question/146385_37793?sort=time 下面就Servlet侦听器结合Java定时器来讲述整个实现过程.要运用Servl ...

  8. 设置java web工程中默认访问首页的几种方式

    1.demo中最常见的方式是在工程下的web.xml中设置(有时候根据业务可能需要设置action,在action中处理逻辑加载跳转什么的,比较少): <welcome-file-list> ...

  9. Servlet接口的实现类,路径配置映射,ServletConfig对象,ServletContext对象及web工程中文件的读取

    一,Servlet接口实现类:sun公司为Servlet接口定义了两个默认的实现类,分别为:GenericServlet和HttpServlet. HttpServlet:指能够处理HTTP请求的se ...

随机推荐

  1. Java遍历对象所有属性

    要获取对象的所有属性可以使用getDeclaredFields()方法会返回一个Field数组遍历这个数组几个遍历所有属性注意使用这个方法会抛出4个异常然后根据属性的类型选择执行对应的内容 publi ...

  2. PHP工程师笔试题

    PHP工程师笔试题 提示:请将答案写在另外一张空白纸上,并在30分钟内完成. PHP 请写出include.require.include_once.require_noce的区别. include是 ...

  3. .Net-using-Class:String 类

    ylbtech-.Net-using-Class:String类 1. 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b ...

  4. 【转】asm.js 和 Emscripten 入门教程

      Web 技术突飞猛进,但是有一个领域一直无法突破 ---- 游戏. 游戏的性能要求非常高,一些大型游戏连 PC 跑起来都很吃力,更不要提在浏览器的沙盒模型里跑了!但是,尽管很困难,许多开发者始终没 ...

  5. 附1 踩过的jedis的一些坑

    1.java.lang.Long to java.lang.B]类型转换异常 解决方案:归还资源部分,使用jedis.close() 2.jedis数组越界异常 解决方案:版本太低,升到2.8.0

  6. 读书笔记,《深入理解java虚拟机》,第三章 垃圾收集器与内存分配策略

    要实现虚拟机,其实人们主要考虑完成三件事情: 第一,哪些内存需要回收: 第二,什么时候回收: 第三,如何回收. 第二节,对象已死吗    垃圾收集其实主要是针对java堆里面的数据来说的,传统的垃圾收 ...

  7. iOS开发-UIActionSheet简单介绍

    UIActionSheet和UIAlertView都是ios系统自带的模态视图,模态视图的一个重要的特性就是在显示模态视图的时候可以阻断其他视图的事件响应.一般情况下我们对UIAlertView使用的 ...

  8. Ajax核心技术之XMLHttpRequest

    Ajax:即"Asynchronous JavaScript and XML"(异步JavaScript和XML),一门综合性的技术:运用JavaScript对象XMLHttpRe ...

  9. window下配置Apache2服务器

    1:去Apache.org下载安装包 http://httpd.apache.org/ 2:解压到某一个目录 3:修改httpd.conf(Apache的解压目录和端口号) 4:管理员方式启动cmd执 ...

  10. Ubuntu通过 lshw 工具包查看物理网卡名称

    步骤1:安装相关工具包 apt-get install lshw lshw-gtk 步骤2:执行lshw命令进行查看硬件信息