基于从request获取各种路径的方法介绍

 更新时间:2017年11月25日 08:45:02   作者:piaoxuan1987  
下面小编就为大家分享一篇基于从request获取各种路径的方法介绍,具有很好的参考价值,希望对大家有所帮助

equest.getRealPath() 这个方法已经不推荐使用了,代替方法是:

request.getSession().getServletContext().getRealPath()

在servlet里用this.getServletContect().getRealPath()

在struts里用this.getServlet().getServletContext().getRealPath()

在Action里用ServletActionContext.getRequest().getRealPath();

以上三个获得都是当前运行文件在服务器上的绝对路径

 

从request获取各种路径总结

request.getRealPath("url"); // 虚拟目录映射为实际目录

request.getRealPath("./"); // 网页所在的目录

request.getRealPath("../"); // 网页所在目录的上一层目录

request.getContextPath(); // 应用的web目录的名称

如http://localhost:7001/bookStore/

/bookStore/ => [contextPath] (request.getContextPath())

获取Web项目的全路径

String strDirPath = request.getSession().getServletContext().getRealPath("/");

以工程名为TEST为例:

(1)得到包含工程名的当前页面全路径:request.getRequestURI()

结果:/TEST/test.jsp

(2)得到工程名:request.getContextPath()

结果:/TEST

(3)得到当前页面所在目录下全名称:request.getServletPath()

结果:如果页面在jsp目录下 /TEST/jsp/test.jsp

(4)得到页面所在服务器的全路径:application.getRealPath("页面.jsp")

结果:D:\resin\webapps\TEST\test.jsp

(5)得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();

结果:D:\resin\webapps\TEST

2.在类中取得路径:

(1)类的绝对路径:Class.class.getClass().getResource("/").getPath()
结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/

(2)得到工程的路径:System.getProperty("user.dir")
结果:D:\TEST

3.在Servlet中取得路径:

(1)得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。

结果:E:\Tomcat\webapps\TEST

(2)得到IE地址栏地址:request.getRequestURL()

结果:http://localhost:8080/TEST/test

(3)得到相对地址:request.getRequestURI()

结果:/TEST/test

相关文章

  • 如何用nacos搭建微服务注册配置中心

    如何用nacos搭建微服务注册配置中心

    这篇文章主要介绍了如何用nacos搭建微服务注册配置中心问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • win10和win7下java开发环境配置教程

    win10和win7下java开发环境配置教程

    这篇文章主要为大家详细介绍了win7下Java开发环境配置教程,win10下Java开发环境配置,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • 关于RedisTemplate之opsForValue的使用说明

    关于RedisTemplate之opsForValue的使用说明

    这篇文章主要介绍了关于RedisTemplate之opsForValue的使用说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • Spring与Dubbo搭建一个简单的分布式详情

    Spring与Dubbo搭建一个简单的分布式详情

    这篇文章主要介绍了Spring与Dubbo搭建一个简单的分布式详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • Springmvc基于fastjson实现导包及配置文件

    Springmvc基于fastjson实现导包及配置文件

    这篇文章主要介绍了Springmvc基于fastjson实现导包及配置文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • spring+springmvc+mybatis+maven入门实战(超详细教程)

    spring+springmvc+mybatis+maven入门实战(超详细教程)

    这篇文章主要介绍了spring+springmvc+mybatis+maven入门实战(超详细教程),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • BaseDao封装增删改查的代码详解

    BaseDao封装增删改查的代码详解

    本篇文章主要介绍对数据库中表中的数据进行增改删查询,封装一个工具类(BaseDao)的详细使用以及部分理论知识,并通过代码示例给大家介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • Java class文件格式之常量池_动力节点Java学院整理

    Java class文件格式之常量池_动力节点Java学院整理

    这篇文章主要为大家详细介绍了Java class文件格式之常量池的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • java中final关键字使用示例详解

    java中final关键字使用示例详解

    Java中的final关键字非常重要,它可以应用于类、方法以及变量。这篇文章中带你看看什么是final关键字?将变量,方法和类声明为final代表了什么?使用final的好处是什么?最后也有一些使用final关键字的实例
    2014-01-01
  • Delegate IDE build/run actions to maven 配置会影响程序运行吗?

    Delegate IDE build/run actions to maven 配置会影响程序运行吗?

    这篇文章主要介绍了Delegate IDE build/run actions to maven 配置会影响程序运行吗,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08

最新评论