jsp获取项目路径(二)

jsp选择文件夹路径 在windows系统中,使用struts2的file属性不支持选择文件夹,只能选择到具体文件,通过js及ie浏览器配置则可实现选择到文件夹操作 立即下载
1.? 获取web服务器项目的真实物理路径
request.getSession().getServletContext().getRealPath("/");
2.? 相对路径的获得
说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)
String relativelyPath=System.getProperty("user.dir");
上述相对路径中,java项目中的文件是相对于项目的根目录
web项目中的文件路径视不同的web服务器不同而不同
(tomcat是相对于 tomcat安装目录\bin)
3.? 类加载目录的获得(即当运行时某一类时获得其装载目录)
3.1. 通用的方法一
(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录 )   
   InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt");
   (test.txt文件的路径为项目名\src\test.txt;类TestAction所在包的第一级目录位于src目录下)   
   上式中将TestAction,test.txt替换成对应成相应的类名和文件名字即可
3.2. 通用方法二 (此方法和1.1中的方法类似,不同的是此方法必须以'/'开头)
   InputStream is=Test1.class.getResourceAsStream("/test.txt");
   (test.txt文件的路径为项目名\src\test.txt,类Test1所在包的第一级目录位于src目录下)   
4.? web项目根目录的获得(发布之后)
4.1. 从servlet出发
   可建立一个servlet在其的init方法中写入如下语句
   ServletContext s1=this.getServletContext();
   String temp=s1.getRealPath("/"); (关键)
   结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ (002_ext为项目名字)
   如果是调用了s1.getRealPath("")则输出D:\工具\Tomcat-6.0\webapps\002_ext(少了一个"\")
4.2. 从httpServletRequest出发
   String cp11111=request.getSession().getServletContext().getRealPath("/");
?
   结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\
5.? classpath的获取
(在Eclipse中为获得src或者classes目录的路径)
5.1. 方法一
?????? Thread.currentThread().getContextClassLoader().getResource("").getPath();
?????? eg:
   String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
   System.out.println("t---"+t);
   输出:t---/E:/order/002_ext/WebRoot/WEB-INF/classes/   
5.2. 方法二
JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse为src某一个包中的类,下同)
   eg:
String p1=JdomParse.class.getClassLoader().getResource("").getPath();
System.out.println("JdomParse.class.getClassLoader().getResource--"+p1);
输出:
JdomParse.class.getClassLoader().getResource--/E:/order/002_ext/WebRoot/WEB-INF/classes/
另外,如果想把文件放在某一包中,则可以通过以下方式获得到文件(先定位到该包的最后一级目录)
eg
String p2=JdomParse.class.getResource("").getPath();
System.out.println("JdomParse.class.getResource---"+p2);
输出:
JdomParse.class.getResource---/E:/order/002_ext/WebRoot/WEB-INF/classes/jdom/
(JdomParse为src目录下jdom包中的类)
在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。
6.? 在Jsp,Servlet,Java中详细获得路径的方法
6.1. jsp中取得路径:
以工程名为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
6.2. 在类中取得路径:
(1)类的绝对路径:Class.class.getClass().getResource("/").getPath()
结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路径:System.getProperty("user.dir")
结果:D:\TEST
6.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

【首份】2023年30米分辨率土地利用遥感监测数据 为了恢复和重建我国土地利用变化的现代过程,更好地预测、预报土地利用变化趋势,地球资源数据云以美国陆地卫星Landsat 遥感影像数据作为主信息源,结合Sentinel系列数据,通过人工目视解译和机器学习方法,建立了国家尺度1:10 万比例尺多时期土地利用/土地覆盖遥感监测数据库(CNLUCC)因早期Landsat数据时空覆盖缺失,1972-1977年合成第一期数据,1978-1985年合成第二期数据,1986年起每年度生成一期数据。投影:Albers正轴等面积双标准纬线圆锥投影南标准纬线:25°N。 阅读详情

相关推荐

语义通信理论必看论文:Towards a Theory of Semantic Communication

了解语义通信发展必看的一篇文章

一去不复返的通信er 3926

(转载)获取项目的路径

参考网络文章整理1. 获取web服务器项目的真实物理路径 request.getSession().getServletContext().getRealPath("/"); 2. 相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=System.getProper...

282

一文详解声码器

声码器(Vocoder)是语音信号处理领域的核心技术,其本质是通过“分析 - 参数化 - 合成” 的闭环流程,实现语音的高效编码、转换或生成。它不仅是早期语音通信的关键工具,更是现代 AI 语音技术(如 TTS、语音转换)的核心组件。以下从原理、技术分类、关键模块、应用及发展趋势展开详细解析。

weixin_41413777的博客 1354

SpringBoot获取项目文件的绝对路径和相对路径

SpringBoot获取项目文件的绝对路径和相对路径

刘大猫 2万+

从ResNet到EfficientNet:特征金字塔网络(FPN)在不同骨干网中的适配指南

本文深入探讨了特征金字塔网络(FPN)与ResNet、VGG、EfficientNet等主流骨干网络的适配策略。文章详细解析了FPN的核心原理,并针对不同骨干网络的特征提取特性,提供了通道对齐、参数量估算及迁移学习的系统化指南,旨在帮助开发者在目标检测等视觉任务中构建高性能、高效率的模型。

weixin_29047919的博客 221

TLSR8258蓝牙Mesh实战:从SDK下载到自定义通信指令全流程(附避坑指南)

本文详细介绍了TLSR8258蓝牙Mesh开发的完整流程,从SDK下载、环境搭建到自定义通信指令的实现。通过实战案例和避坑指南,帮助开发者快速掌握低功耗蓝牙Mesh网络构建技巧,适用于智能家居、工业监控等物联网场景。

weixin_29176179的博客 199

Java获取当前路径的几种方法

学习Java的同学注意了!!! 学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Java学习交流群,群号码:434987175 我们一起学Java! 1、利用System.g...

chuifuhuo6864的博客 1177

不加行也能填满:用 ABAP BDC 驯服 Table Control 滚动录制缺陷,批量维护供应商银行账户

摘要 本文探讨了在SAP ECC/S4HANA系统中处理供应商主数据时,Table Control控件带来的批量导入挑战。文章指出,银行账户维护界面中Table Control的滚动动作难以被录制工具捕捉,导致批量导入数据时仅能填充前5行。解决方案是通过BDC_OKCODE显式触发翻页(如=P+),并配合行号拼接(如(01)~(05))将数据写入不可见行。文中提供了完整的ABAP程序示例,展示了如何读取外部文件、动态生成BDCDATA、处理表格翻页逻辑,最终通过CALL TRANSACTION执行XK01事

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 272

获取几种项目路径的方式(Done)

// 第一种:获取类加载的根路径 D:\git\daotie\daotie\target\classes 23 File f = new File(this.getClass().getResource("/").getPath()); 24 System.out.println(f); 25 26 // 获取当前类的所在工程路径; ...

低调的冲击波 1459

【matlab】基于 Simulink 的空调恒温控制系统仿真建模

本文介绍了基于Simulink的空调恒温控制系统仿真建模方法。系统采用PID控制算法,通过传感器测量温度、控制器计算信号、执行器调节功率来实现恒温控制。文章详细阐述了Simulink模型搭建步骤,包括PID控制器、房间热力学特性模拟等模块的实现,并提供了测试流程和多种实际部署场景。该方法可有效验证控制算法性能,优化系统设计,适用于家用、商用、工业及汽车空调系统。未来可结合智能算法和节能优化技术进一步提升系统性能。

走向CTO的路上... 920

在blender中安装vtk插件

Blender 是一个开源的、功能强大的3D计算机图形软件,广泛用于创建动画片、视觉效果、艺术作品、3D打印模型、互动3D应用程序和视频游戏。Blender 是由 Blender 基金会开发和维护的,具有丰富的功能和灵活的扩展性。在github上下载zip插件。

如果想成为中心,那么就到中心去吧。 294

Java路径问题最终解决方案之一

前言  Java的路径问题,非常难搞。最近的工作涉及到创建和读取文件的工作,这里我就给大家彻底得解决Java路径问题。  我编写了一个方法,比ClassLoader.getResource(String 相对路径)方法的能力更强。它可以接受“../”这样的参数,允许我们用相对路径来定位classpath外面的资源。这样,我们就可以使用相对于classpath的路径,定位所有位置的资源!  Java

琉璃仙境 1483

SAP和Oracle EBS作为全球顶级的ERP系统,在中国市场深耕数十年,尤其是在大型国企、央企和跨国企业中,已经形成了强大的用户习惯和“舒适区”依赖

国产ERP替代国际系统的关键挑战在于打破用户对SAP/Oracle的操作习惯和心理依赖。需采取多维策略:战略上明确价值主张、分阶段实施;产品上优化用户体验、确保数据迁移;实施上加强情景化培训、流程再造。成功替代70%取决于变革管理,需将"被动替换"转为"主动升级",让用户在新系统中建立更优的舒适区。

金牌架构师 383

前端获取项目路径问题

第一种  获取全路径  String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath(); request.setAttribute("basePath", basePath);第二种c标签,获取项目根路径<c:se...

qq_40010745的博客 1964

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

在java项目中获取项目根路径的方法

1.在当前JSP中的java代码中获取,再在JS中获取 2.在跳入当前页面的action中获取根路径,放入request中,再在JS中获取  String path = request.getContextPath(); String basePath = request.getScheme() + "://"         + request.getServerName() + "...

violectyc的博客 1369

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

获取项目的根路径(后台,前段两种手段)

1.通过能过滤器添加 public class ContextPathFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(

幽默工作室 2357

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

jsp路径问题

来自:http://apps.hi.baidu.com/share/detail/22451700 解决JSP中的路径问题 在JSP中的如果使用 "相对路径" 则有可能会出现问题. 因为 网页中的 "相对路径" , 他是相对于 "URL请求的地址" 去寻找资源. 上面这句话是什么意思呢 ? 举个例子: 假如我们有一个项目: MyApp 在该项目下, 有一个jsp文件夹

darkshaddock的专栏 543

java_springMVC_统一工程路径

我们在页面中访问另一页面,或者跳转到另一页面时,需要页面的url。如在addUser.jsp页面中,点击ajax提交按钮,会访问http://localhost:8080/firstSpringMVC/user/ajaxSaveUser: 又如,在addUser.jsp页面中,需要引入jquery的js文件:<script type="text/javascript" src="http:/...

子龙修仙的博客 1697

jsp文件开头path, basePath作用

 在JSP中的如果使用 "相对路径"  则有可能会出现问题.  因为 网页中的 "相对路径" , 他是相对于 "URL请求的地址" 去寻找资源.  上面这句话是什么意思呢 ? 举个例子: 假如我们有一个项目: MyApp 在该项目下, 有一个jsp文件夹 该文件夹下包括: login.jsp    // 登陆页面 register.jps  // 注册页

技术改变生活,生活改变思想,思想改变技术。 1365

Struts2 访问Action和Jsp页面出现的路径问题解决方案之 ---- 为jsp、图片、js、css等获取Web工程的绝对路径的方法

Way1: 内嵌入java代码! <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> 测试用例: /js/header.js"> Wa

langjian2012的专栏 2305

idea jsp引用css无效_IDEA中向JSP页面添加css和js引用路径的问题

现在有一个项目,用到了第三方的js和css插件,需要引用到我们的jsp页面,项目结构大致如下如果直接采用下面的方式,将无法引用成功,导致页面效果无法实现。这里原因是/为根路径,而根路径默认从WEB-INF这里开始,所以运营后将无法找到插件资源。那么更改路径,通过../呢上面的方式,期望通过/..追溯到webapp路径后,再向下查找文件路径,实际上也是不可行的,编译器也会提示找不到不过这里的思路到是...

weixin_39847945的博客 655

在js、jsp文件中如何获取项目绝对路径

js、jsp如何文件获取项目绝对路径1,js文件中获取项目绝对路径2,jsp文件中获取项目绝对路径 1,js文件中获取项目绝对路径 在“.js”文件里面,加入下面方法。该方法就是获取形如:192.168.1.110/zgxt/ 这种路径 获取绝对路径 function getPathRootJump(){ var pathName = window.location.pathname.su...

DAMO小天天 3881

web项目中各种路径的获取

1.可以在servlet的init方法里 String path = getServletContext().getRealPath("/"); 这将获取web项目的全路径 例如 :E:\eclipseM9\workspace\tree\ tree是我web项目的根目录 2.你也可以随时在任意的class里调用 this.getClass().getClassL

哲的博客 6277

jsp 获取项目路径,java获取项目路径

1.  获取web服务器项目的真实物理路径 request.getSession().getServletContext().getRealPath("/"); 2.  相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=System.getProperty("user.dir"

xyjikl 328

jsp页面获取项目根路径完整Url地址-附带效果图

jsp页面获取项目根路径完整Url地址-附带效果图jsp页面 - 头部信息效果图 - (用啥拿啥) 废话不多说直接上代码和效果图(前言也没有) jsp页面 - 头部信息 <%@ page contentType="text/html; charset=UTF-8"%> <html> <head> <meta http-equiv="X-UA-Compati...

探索丶挑战丶突破 3398

jsp 获取项目路径,java获取项目路经

1. 获取web服务器项目的真实物理路径 request.getSession().getServletContext().getRealPath("/"); 2. 相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=System.getProperty("user.dir"

大河塬 365
上一篇: 你好,2014
下一篇: 利用AbstractRoutingDataSource实现动态数据源切换 (Spring+Hibernate)
JavaAlpha
博客等级 码龄18年 910粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值