刚刚学jsp的时候都是从看别人的代码,模仿着做,但是这样也有看不懂的地方,这个相对路径和绝对路径就让我纠结了好久。。所以我自己弄了一个demo实验了一下,试验出结果了,但是不明白原理,纠结了一天,终于问别人知道了,最关键的是我自己看到“地址栏”才理解啊。。。所有不能离了题。先附上demo的代码:

    index.jsp

<FORM  action="servlet/TiaoZhuanServlet" method="post">
请输入内容:<input type="text" name="info">
<input type="submit" value="提交">
</FORM>

    show.jsp:

    <%
String info=(String)request.getAttribute("info");
%>
<h3>info的内容是:<%=info%></h3>

web.xml:

 <servlet>
<servlet-name>TiaoZhuanServlet</servlet-name>
<servlet-class>org.gsh.wh.servlet.TiaoZhuanServlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>TiaoZhuanServlet</servlet-name>
<url-pattern>/servlet/TiaoZhuanServlet</url-pattern>
</servlet-mapping>

servlet:

 public class TiaoZhuanServlet extends HttpServlet {

     private static final long serialVersionUID = 1L;

     public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("GBK");
String info=request.getParameter("info");
request .setAttribute("info", info);
request.getRequestDispatcher("show.jsp").forward(request, response);
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response); }

web.xml中德配置<servlet>     <description>This is the description of my J2EE component</description>     <display-name>This is the display name of my J2EE component</display-name>     <servlet-name>TiaoZhuanServlet</servlet-name>     <servlet-class>org.gsh.wh.servlet.TiaoZhuanServlet</servlet-class>   </servlet>

<servlet-mapping>     <servlet-name>TiaoZhuanServlet</servlet-name>     <url-pattern>/servlet/TiaoZhuanServlet</url-pattern>   </servlet-mapping>  在加“/”和不加“/”的理解上是这样的:加了“/”就是绝对路径。而不加“/”就是相对路径 绝对路径:比如在“/show”,那么它会在http://localhost/Test2下面照“show.jsp”, 如果不加的话:就是相对路径:从http://localhost/Test2/servlet/TiaoZhuanServlet(a)往show.jsp跳转,相对a的话跳转后的就是: http://localhost/Test2/servlet/show.jsp此时肯定找不到show.jsp

而如果你的配置如下: <servlet>     <description>This is the description of my J2EE component</description>     <display-name>This is the display name of my J2EE component</display-name>     <servlet-name>TiaoZhuanServlet</servlet-name>     <servlet-class>org.gsh.wh.servlet.TiaoZhuanServlet</servlet-class>   </servlet>

<servlet-mapping>     <servlet-name>TiaoZhuanServlet</servlet-name>     <url-pattern>/TiaoZhuanServlet</url-pattern>   </servlet-mapping> 表单那 里的action="TiaoZhuanServlet",记得更改。

则相对路径是:http://localhost/Test2下面照“show.jsp”,而不加的话:依然跳转http://localhost/Test2/TiaoZhuanServlet 往"show.jsp"跳转,结果为:http://localhost/Test2/show.jsp,所以加和不加一样

demo的图片

jsp中路径的问题。。。的更多相关文章

  1. jsp中路径的写法

    在JavaWeb开发中,常使用绝对路径的方式来引入JavaScript和CSS文件,这样可以避免因为目录变动导致引入文件找不到的情况 代码” ${pageContext.request.context ...

  2. Jsp中路径问题

    ${pageContext.request.contextPath}”的作用是取出部署的应用程序名,这样不管如何部署,所用路径都是正确的. <!--使用绝对路径的方式引入CSS文件-->& ...

  3. jsp中超链接路径的写法

    主题 超链接不就是一个地址字符串吗?这能有什么花头? LZSB! 曾经我也是这么想的.... 最近对apache的学习让我对网页中超链接,CSS,js的路径的写法有了一些新的认识. 所以这篇文章主要分 ...

  4. 使用Maven构建Java Web项目时,关于jsp中引入js、css文件路径问题。

    今天有点闲,自己动手搭建一个Java Web项目,遇到jsp中引入js.css文件时路径不正确的问题,于是在网上查阅了很多资料,最终都无法解决问题,于是,上stackoverflow找到了解决方法,这 ...

  5. 【转】JSP中的相对路径和绝对路径

    1.首先明确两个概念: 服务器路径:形如:http://192.168.0.1/的路径 Web应用路径:形如:http://192.168.0.1/yourwebapp的路径 2.关于相对路径与绝对路 ...

  6. jsp中如何获得url路径和绝对路径

    jsp中如何获得url路径 request.getHeader("referer") JSP中获得当前应用的相对路径和绝对路径 根目录所对应的绝对路径:request.getReq ...

  7. JSP中的路径

    我的原则 所有路径一律使用绝对路径,就是以"/"开头的或者带host的路径.形如: /imgs/1.jpg <%= request.getContextPath()%> ...

  8. 关于jsp中超链接的相对路径

    前提:新建了一个名为MyProject的web工程.在WebContent目录下新建一个jsp目录,在jsp目录中新建一个index.jsp文件. 实验:在index.jsp里写了4个链接,如下: & ...

  9. JSP中的相对路径和绝对路径(转)

    1.首先明确两个概念: 服务器路径:形如:http://192.168.0.1/的路径 Web应用路径:形如:http://192.168.0.1/yourwebapp的路径 2.关于相对路径与绝对路 ...

随机推荐

  1. Gradle 设置本地meaven

    repositories { maven { url uri("F:\\meaven")} }

  2. Python的异常

    一.异常的常用形式 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行.一般情况下,在Python无法正常处理程序时就会发生一个异常.异常是Python对象,表示一个错误.当Pyth ...

  3. Django笔记 —— 高级视图和URL配置

    最近在学习Django,打算玩玩网页后台方面的东西,因为一直很好奇但却没怎么接触过.Django对我来说是一个全新的内容,思路想来也是全新的,或许并不能写得很明白,所以大家就凑合着看吧- 本篇笔记(其 ...

  4. Qt Qwdget 汽车仪表知识点拆解1 速度表示

    先贴上效果图,注意,没有写逻辑,所以这些都是乱动的 这里线主要说一下中间显示速度的显示制作的方式,在这里,自己专门写了一个数字的仪表 考虑的一般的汽车是没有办法把瞬时速度提升到四位数的,所以我这里就放 ...

  5. cocos2d-x 键盘和鼠标事件

    出了菜单可以响应用户事件外,cocos2d中的层(Layer)也可以响应事件.层能够自动响应窗口事件,这些事件主要是键盘和鼠标事件,cocos2d中事件处理是通过Pyglet的事件处理完成的. 1.键 ...

  6. Python网络编程(进程池、进程间的通信)

    线程池的原理:        线程池是预先创建线程的一种技术.线程池在还没有任务到来之前,        创建一定数量的线程,放入空闲队列中.这些线程都是处于睡眠状态,        即均为启动,不消 ...

  7. js中DOM 节点的一些操作方法

    什么是DOM DOM:文档对象模型.DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构.目的其实就是为了能让js操作html元素而制定的一个规范. DOM就是由节点组成的. 解析过程 ...

  8. su: Authentication failure

    su: Authentication failure问题解决: su 命令切换失败,提示su: Authentication failure,只要你sudo passwd root过一次之后,下次再s ...

  9. 爬取图片过程遇到的ValueError: Missing scheme in request url: h 报错与解决方法

    一 .scrapy整体框架 1.1 scrapy框架图 1.2 scrapy框架各结构解析 item:保存抓取的内容 spider:定义抓取内容的规则,也是我们主要编辑的文件 pipelines:管道 ...

  10. hibernate和mybatis的之CRUD封装差别

    hibernate和mybatis的之CRUD封装差别 以下讲的是基于MVC三层架构. 由于设计架构的差别,hibernate在实际编程中可以把基础的CRUD封装,比如BaseDao类.其它类只要去继 ...