zoukankan      html  css  js  c++  java
  • jsp request 获取路径

    这篇教程不错:http://zjutsoft.iteye.com/blog/1084260

    自己试验如下:

    System.out.println("-----------------servlet-----------------");
    System.out.println("realpath null:"+request.getRealPath(""));
    System.out.println("realpath index.jsp:"+request.getRealPath("index.jsp"));
    System.out.println("realpath ./:"+request.getRealPath("./"));
    System.out.println("realpath ../:"+request.getRealPath("../"));
    System.out.println("contextpath:"+request.getContextPath());
    System.out.println("web项目的全路径:"+request.getSession().getServletContext().getRealPath("/"));
    System.out.println("URI:"+request.getRequestURI());
    System.out.println("URL:"+request.getRequestURL());
    System.out.println("servletpath:"+request.getServletPath());
    //System.out.println("页面在服务器的绝对路径:"+new java.io.File(application.getRealPath(request.getRequestURI())).getParent());
    
    System.out.println("~~~~~~~~~~~~~~~页面~~~~~~~~~~~~~~~~~");
    System.out.println("realpath null:"+request.getRealPath(""));
    System.out.println("realpath index.jsp:"+request.getRealPath("index.jsp"));
    System.out.println("realpath ./:"+request.getRealPath("./"));
    System.out.println("realpath ../:"+request.getRealPath("../"));
    System.out.println("contextpath:"+request.getContextPath());
    System.out.println("web项目的全路径:"+request.getSession().getServletContext().getRealPath("/"));
    System.out.println("URI:"+request.getRequestURI());
    System.out.println("URL:"+request.getRequestURL());
    System.out.println("servletpath:"+request.getServletPath());
    System.out.println("页面在服务器的绝对路径:"+new java.io.File(application.getRealPath(request.getRequestURI())).getParent());
    
    //结果
    -----------------servlet-----------------
    realpath null:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt
    realpath index.jsp:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxtindex.jsp
    realpath ./:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt.
    realpath ../:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt..
    contextpath:/jyxt
    web项目的全路径:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt
    URI:/jyxt/hello
    URL:http://localhost:8080/jyxt/hello
    servletpath:/hello
    ~~~~~~~~~~~~~~~页面~~~~~~~~~~~~~~~~~
    realpath null:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt
    realpath index.jsp:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxtindex.jsp
    realpath ./:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt.
    realpath ../:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt..
    contextpath:/jyxt
    web项目的全路径:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxt
    URI:/jyxt/WEB-INF/view/index.jsp
    URL:http://localhost:8080/jyxt/WEB-INF/view/index.jsp
    servletpath:/WEB-INF/view/index.jsp
    页面在服务器的绝对路径:D:eclipse-jee-luna-SR1-win32eclipseworkspace.metadata.pluginsorg.eclipse.wst.server.core	mp0wtpwebappsjyxtjyxtWEB-INFview
    

    在类中获取路径先不看,其他的只有10种方法。

    两种应用场景:.jsp和servlet中。jsp中realPath被抛弃,不过返回值跟servlet中的一样,getRealPath("./   ../")返回值都不太对;页面在服务器的绝对路径 就不能用了。

    getContextPath() 和 .getSession().getServletContext().getRealPath("/") 在.jsp和servlet中返回值都一样;URI,URL,servletpath都不一样。

    //http
    System.out.println("scheme:"+request.getScheme());
    //localhost
    System.out.println("name:"+request.getServerName());
    //8080
    System.out.println("port:"+request.getServerPort());
    

    常用方法

    在servlet中:getContextPath(), URI, URL, servletPath(), 
    在jsp中:getContextPath()
  • 相关阅读:
    java线程简要
    Unable to find explicit activity class
    用NetBeans生成jar文件
    Linux下三个可以修改环境变量的地方
    linux定时执行shell脚本
    sql server 性能调优之 SQL语句阻塞查询
    sql server 性能调优之 死锁排查
    IObit Advanced SystemCare 系统清理优化工具
    IDEA配置Maven
    maven的生命周期及常用命令的使用
  • 原文地址:https://www.cnblogs.com/wang-jing/p/4620157.html
Copyright © 2011-2022 走看看