关于java和web工程项目中各种路径的获取总结_第1页
关于java和web工程项目中各种路径的获取总结_第2页
关于java和web工程项目中各种路径的获取总结_第3页
关于java和web工程项目中各种路径的获取总结_第4页
关于java和web工程项目中各种路径的获取总结_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关于java和web工程项目中各种路径的获取总参考网络文章整理1. 获取web服务器项目的真实物理路径Java代码1. request.getSession().getServletContext().getRealPath("/");2. 相对路径的获得说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的 java 项 目还是 web项目)Java代码1. String relativelyPath=System.getProperty("user.dir" );上述相对路径中,java项目中的文件是相对于项目的根目录web项目中

2、的文件路径视不同的 web服务器不同而不同(tomcat是相对于 tomcat 安装目录bin)3. 类加载目录的获得(即当运行时某一类时获得其装载目录)3.1. 通用的方法一(不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录)Java代码1. InputStream is=TestAction.class .getClassLoader().getResourceAsStream("test.txt");(test.txt文件的路径为项目名srctest.txt;类TestAction所在包的第一级目录位于src目录下)上式中将TestAction

3、,test.txt替换成对应成相应的类名和文件名字即可3.2. 通用方法二(此方法和1.1中的方法类似,不同的是此方法必须以'/'开头)In putStream is=Test1.class.getResourceAsStream("/test.txt");(test.txt文件的路径为项目名srctest.txt,类Test1所在包的第一级目录位 于src目录下)4. web项目根目录的获得(发布之后)4.1. 从 servlet 出发可建立一个servlet在其的init方法中写入如下语句1. ServletContext s1= this .getSe

4、rvletContext();2. String temp=s1.getRealPath("/");(关键)结果形如:工具Tomcat-6.0webapps002_ext (002_ext 为项目名字)如果是调用了 s1.getRealPath("")则输出 工具Tomcat-6.0webapps002_ext(少了一个"")4.2. 从 httpServletRequest 出发Java代码1. String cp11111=request.getSession().getServletContext().getRealPath(&

5、quot;/");结果形如工具 Tomcat-6.0webapps002_ext5. classpath 的获取(在Eclipse中为获得src或者classes目录的路径)5.1. 方法一Java代码1.Thread.currentThread().getContextClassLoader().getResource("").getPath();2.eg:3.String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();4.System.o

6、ut.println("t-"+t);输出:t-/E:/order/002_ext/WebRoot/WEB-INF/classes/5.2. 方法二Java代码1. JdomParse. class .getClassLoader().getResource("" ).getPath() (JdomParse 为 src 某一个包中的类,下同)2. eg:3. String p1=JdomParse. class .getClassLoader().getResource("" ).getPath();4. System.out.pr

7、intln( "JdomParse.class.getClassLoader().getResource-"+p1);输出:JdomParse.class.getClassLoader().getResource-/E:/order/002_ext/WebRoot/ WEB-INF/classes/另外,如果想把文件放在某一包中,则可以通过以下方式获得到文件(先定位到该 包的最后一级目录)egJava代码1. String p2=JdomParse. class .getResource( "" ).getPath();2. System.out.pri

8、ntln( "JdomParse.class.getResource-"+p2);输出:JdomParse.class.getResource-/E:/order/002_ext/WebRoot/WEB-INF/classe s/jdom/(JdomParse 为 src目录下 jdom 包中的类)在jsp和class文件中调用的相对路径不同。在jsp里,根目录是 WebRoot在class文件中,根目录是 WebRoot/WEB-INF/classes当然你也可以用System.getProperty("user.dir") 获取你工程的绝对路径。6.

9、 在Jsp,Servlet,Java中详细获得路径的方法6.1. jsp中取得路径:以工程名为TEST为例:(1) 得到包含工程名的当前页面全路径:Java代码1. request.getRequestURI()结果:/TEST/test.jsp(2) 得到工程名:Java代码1. request.getContextPath()结果:/TEST(3) 得到当前页面所在目录下全名称:Java代码1. request.getServletPath()结果:如果页面在jsp目录下/TEST/jsp/test.jsp(4) 得到页面所在服务器的全路径:Java代码1. application.get

10、RealPath("页面.jsp")结果:D:resinwebappsTESTtest.jsp(5) 得到页面所在服务器的绝对路径:Java代码1. absPath= new java.io.File(application.getRealPath(request.getRequestURI().g etParent();结果:D:resinwebappsTEST6.2. 在类中取得路径:(1)类的绝对路径:Class.class.getClass().getResource("/").getPath() 结果:/D:/TEST/WebRoot/WEB-

11、INF/classes/pack/得到工程的路径:1. System.getProperty( "user.dir" )结果:D:TEST63在Servlet中取得路径:(1) 得到工程目录:Java代码1. request.getSession().getServletContext().getRealPath("”);参数可具体到包名。结果:E:TomcatwebappsTEST(2) 得到IE地址栏地址:Java代码1. request.getRequestURL()结果:http:/localhost:8080/TEST/test得到相对地址:Java代码

12、1. request.getRequestURI()结果:/TEST/test以工程名为/DemoWeb为例:访问的 jsp 为:http:/localhost:8080/DemoWeb/test/index.jsp1 JSP中获得当前应用的相对路径和绝对路径(1)得到工程名:request.getCo ntextPath()结果:/DemoWeb得到包含工程名的当前页面全路径:request.getRequestURI()结果:/DemoWeb/test/testpath.jsp得到 IE 地址栏地址:request.getRequestURL()结果:http:/localhost:808

13、0/DemoWeb/test/testpath.jsp得到当前页面所在目录下全名称:request.getServletPath() 结果:/test/testpath.jspJava代码(5)得到页面所在服务器的全路径(实际的路径):applicatio n.getRealPath("testpath.jsp")结果:D:DevelopFilesapache-tomcat-5.5.15apache-tomcat-5.5.15webappsDemoWebtestpath.jspD:Develop Filesapache-tomcat-5.5.15apache-tomcat-

14、5.5.15 为 tomcat 的安装路径2.java的Class中获得相对路径,绝对路径的方法(1)类的绝对路径:System.out.pri ntl n( TestPath.class.getResource("/").getPath();结果:/E:/workspace/workspace_tcc/DemoWeb/WebRoot/WEB-INF/classes/System.out.pri ntl n( TestPath.class.getResource("");结果:file:/E:/workspace/workspace_tcc/DemoWe

15、b/WebRoot/WEB-INF/classes/demo1/得到工程的路径:System.getProperty("user.dir")结果:E:workspaceworkspace_tccDemoWebimport .URL;public class A2 public static void main(String args)try String t=A2.class.getResource("a.txt").getPath();System.out.println("t-"+t);/ URL fn=A2.class.getR

16、esource("a.txt");/ String fn1=fn.toString();/ System.out.print(fn1);BufferedReader br = new BufferedReader(new FileReader(t);/ 读取路径文件 String str = ""/ 定义空串while(str=br.readLine()!=null) / 非空,则读一行 System.out.println(str);/ 输出读取的一行数据int a = str.indexOf(" "); /String newStr = str.substring(a);String arryStr = newStr.split(" ");String result = new String3;int flag = 0;for(int i=0;i<arryStr.length;i+)if(flag=3) break; if(!arryStri.trim().equals("") resultflag=arryStri; flag +;for(String s :result) System.out.println

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论