博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
寒假自学阶段(1)
阅读量:5338 次
发布时间:2019-06-15

本文共 3086 字,大约阅读时间需要 10 分钟。

一.JavaWeb中图片路径的问题  

1.可以使用相对路径

eg.  使用"."以及".."来访问不同的路径

  (1)路径

 (2)代码

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>
Insert title here

 (3)其他事项

  ..访问与.类似

2.使用绝对路径

(1)路径

  桌面

(2)代码

1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2     pageEncoding="UTF-8"%> 3  4  5  6 
7 Insert title here 8 9 10 11 12

 (3)其他事项

  不能使用request.getContextPath()来对其访问,下一点会讲有关路径的问题。如果要用需要使用

String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();int num=t.indexOf(".metadata");String path="file:"+t.substring(1,num)+"ForExam/WebContent/img/王珞丹.jpg";

来访问。

二.JavaWeb中文件路径的问题

转载:http://blog.csdn.net/znb769525443/article/details/50731789

1.用Jsp获取

(1)获取文件的绝对路径

String file="文件";(例如:DBUtil.java)

String path=application.getRealPath(file);

结果:

/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/DBUtil.java

Tip:

这里的文件可以是任意文件,不仅仅局限于当前项目的文件。

 

(2)获取当前jsp页面的路径

String p2=request.getRequestURI();

结果:

/ForExam/Test/Test.jsp 

 

(3)获取当前项目的路径

String p3=request.getContextPath(); 

结果:

/ForExam

(4)获取当前项目子目录下的路径,

String p4=request.getServletPath(); 

结果:

/Test/Test.jsp

Tip:

与(2)类似,但是不包括根目录

 

2.用Java类获取

(1)获取Eclipse的运行路径

String a1=System.getProperty("user.dir");

结果:

/Users/amos/eclipse/jee-oxygen/Eclipse.app/Contents/MacOS

 Tip:

windows可能会有所不同

 

(2)获取当前的classpath路径

String a2=User.class.getResource("").toString();

String a3=DBUtil.class.getResource("/").toString();

String a4=DBUtil.class.getClassLoader().getResource("").toString();

String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();

打印出来分别是:

file:/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/WEB-INF/classes/com/jaovo/school/model/

file:/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/WEB-INF/classes/

file:/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/WEB-INF/classes/

/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/WEB-INF/classes/

Tip:

没有看懂!!!!

 

(3)获取文件的绝对路径

如果要获取WebContent目录下的文件绝对路径怎么办?可以用下面的方法
String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
 int num=t.indexOf(".metadata");
 String path=t.substring(1,num)+"项目名/WebContent/文件";
结果是:

Volumes/三千小世界/学习文件/java开发/workplace/项目名/WebContent/文件

Tip:

*其实就是(1)中的参数,去掉metadata后面的部分

*windows的/有所不同

 

3.用servlet获取

(1)获取项目的绝对路径

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

结果:

/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/

 

(2)获取浏览器地址

request.getRequestURL()

结果:

http://localhost:8080/ForExam/Test/Test.jsp

 

(3)获取当前文件的绝对路径

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

结果:

/Volumes/三千小世界/学习文件/java开发/workplace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/ForExam/ForExam/Test/Test.jsp

转载于:https://www.cnblogs.com/tianxiayoujiu/p/8370948.html

你可能感兴趣的文章
Zookeeper一致性级别
查看>>
单例模式的几种实现方式及对比
查看>>
邓白氏编码 申请
查看>>
Linux远程登录
查看>>
Linux自己安装redis扩展
查看>>
HDU 1016 Prime Ring Problem(dfs)
查看>>
C#中结构体与字节流互相转换
查看>>
session和xsrf
查看>>
跟随大神实现简单的Vue框架
查看>>
Linux目录结构
查看>>
LeetCode-Strobogrammatic Number
查看>>
luoguP3414 SAC#1 - 组合数
查看>>
五一 DAY 4
查看>>
(转)接口测试用例设计(详细干货)
查看>>
【译】SSH隧道:本地和远程端口转发
查看>>
win8.1安装Python提示缺失api-ms-win-crt-runtime-l1-1-0.dll问题
查看>>
图片点击轮播(三)-----2017-04-05
查看>>
判断两个字符串是否相等【JAVA】
查看>>
直播技术细节3
查看>>
《分布式服务架构:原理、设计于实战》总结
查看>>