zoukankan      html  css  js  c++  java
  • 解决路径问题

                     定义:前台路径:在jsp中(除java代码块)填写的的路径;
                               后台路径:在java代码,配置文件中填写的路径;


                      参照路径:不以/开头的:参照路径为当前资源的访问路径(是地址栏地址去掉访问名称)
                                                              例如:URL为http://localhost:8080/01-primary/hello.do去掉资源名称hello.do
                                                              即为访问路径http://localhost:8080/01-primary/ URL=访问路径+资源名称
                                         以/开头的:1.前台路径的参照路径是web服务器的根。例如http://localhost:8080
                                                            2.后台路径的参照路径是web应用的根。例如http://localhost:8080/01-primary

                                       示例:<a href="/hello.do">跳转</a> (注:MyController是SpringMVC中的处理器)
                                       前台路径,其参照路径为web服务器的根,即http://localhost:8080,所以提交的绝对路径为
                                       http://localhost:8080/ hello.do,这个绝对路径是无法访问到处理器MyController的,中间缺少项目名。
                                       解决方法:路径前加${pageContext.request.contextPathdon}动态获取项目的名称。
                                       即${pageContext.request.contextPathdon}/hello.do

                                       <a href="hello.do">跳转</a>
                                       不以/开头的路径,其参照路径为当前资源的访问路径,http://localhost:8080/01-primary/index.jsp去掉index.jsp
                                       即为http://localhost:8080/01-primary/,所以其访问路径为http://localhost:8080/01-primary/ hello.do。能访问的到。

                                       request.getRequestDispacther("/test.jsp").forword(request,response);
                                       后台路径,其参考路径为web应用的根,即http://localhost:8080/01-primary,所以提交的绝对路径为
                                       http://localhost:8080/01-primary /test.jsp,能访问的到,因为test.jsp在项目根目录。


                         特例:当代码中使用response的sendRedirect()方法进行重定向时,其参照路径不是web应用的根,而是web服务器的根路径。
                                 (因为重定向是两个请求两个响应,"相当于是从前台发出的请求")。正确写法:response.sendRedirect("test.jsp"); 不带/

  • 相关阅读:
    vb.net控件数组的问题
    用SQL语句创建和删除Access数据库中的表;添加列和删除列
    vs2003C#datagrid单行行高设定
    三亚自由人攻略.2009最新
    VB.NET窗口渐淡关闭
    都市男女的30声幽默叹息
    Windows 正版增值验证工具如何取消
    VAB删除Word多余空行
    VBA控制菜单栏上的菜单(如页面设置、打印)
    win7 下安装 adams
  • 原文地址:https://www.cnblogs.com/zhengzhen0512/p/7684245.html
Copyright © 2011-2022 走看看