`
chuan9966
  • 浏览: 47060 次
文章分类
社区版块
存档分类
最新评论

jsp获取项目路径

 
阅读更多
1.? 获取web服务器项目的真实物理路径
02 request.getSession().getServletContext().getRealPath("/");
03 2.? 相对路径的获得
04 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目)
05 String relativelyPath=System.getProperty("user.dir");
06 上述相对路径中,java项目中的文件是相对于项目的根目录
07 web项目中的文件路径视不同的web服务器不同而不同
08 (tomcat是相对于 tomcat安装目录\bin)
09 3.? 类加载目录的获得(即当运行时某一类时获得其装载目录)
10 3.1. 通用的方法一
11 (不论是一般的java项目还是web项目,先定位到能看到包路径的第一级目录 )   
12    InputStream is=TestAction.class.getClassLoader().getResourceAsStream("test.txt");
13    (test.txt文件的路径为项目名\src\test.txt;类TestAction所在包的第一级目录位于src目录下)   
14    上式中将TestAction,test.txt替换成对应成相应的类名和文件名字即可
15 3.2. 通用方法二 (此方法和1.1中的方法类似,不同的是此方法必须以'/'开头)
16    InputStream is=Test1.class.getResourceAsStream("/test.txt");
17    (test.txt文件的路径为项目名\src\test.txt,类Test1所在包的第一级目录位于src目录下)   
18 4.? web项目根目录的获得(发布之后)
19 4.1. 从servlet出发
20    可建立一个servlet在其的init方法中写入如下语句
21    ServletContext s1=this.getServletContext();
22    String temp=s1.getRealPath("/"); (关键)
23    结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\ (002_ext为项目名字)
24    如果是调用了s1.getRealPath("")则输出D:\工具\Tomcat-6.0\webapps\002_ext(少了一个"\")
25 4.2. 从httpServletRequest出发
26    String cp11111=request.getSession().getServletContext().getRealPath("/");
27 ?
28    结果形如:D:\工具\Tomcat-6.0\webapps\002_ext\
29 5.? classpath的获取
30 (在Eclipse中为获得src或者classes目录的路径)
31 5.1. 方法一
32 ?????? Thread.currentThread().getContextClassLoader().getResource("").getPath();
33 ?????? eg:
34    String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();
35    System.out.println("t---"+t);
36    输出:t---/E:/order/002_ext/WebRoot/WEB-INF/classes/   
37 5.2. 方法二
38 JdomParse.class.getClassLoader().getResource("").getPath() (JdomParse为src某一个包中的类,下同)
39    eg:
40 String p1=JdomParse.class.getClassLoader().getResource("").getPath();
41 System.out.println("JdomParse.class.getClassLoader().getResource--"+p1);
42 输出:
43 JdomParse.class.getClassLoader().getResource--/E:/order/002_ext/WebRoot/WEB-INF/classes/
44 另外,如果想把文件放在某一包中,则可以通过以下方式获得到文件(先定位到该包的最后一级目录)
45 eg
46 String p2=JdomParse.class.getResource("").getPath();
47 System.out.println("JdomParse.class.getResource---"+p2);
48 输出:
49 JdomParse.class.getResource---/E:/order/002_ext/WebRoot/WEB-INF/classes/jdom/
50 (JdomParse为src目录下jdom包中的类)
51 在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。
52 6.? 在Jsp,Servlet,Java中详细获得路径的方法
53 6.1. jsp中取得路径:
54 以工程名为TEST为例:
55 (1)得到包含工程名的当前页面全路径:request.getRequestURI()
56 结果:/TEST/test.jsp
57 (2)得到工程名:request.getContextPath()
58 结果:/TEST
59 (3)得到当前页面所在目录下全名称:request.getServletPath()
60 结果:如果页面在jsp目录下 /TEST/jsp/test.jsp
61 (4)得到页面所在服务器的全路径:application.getRealPath("页面.jsp")
62 结果:D:\resin\webapps\TEST\test.jsp
63 (5)得到页面所在服务器的绝对路径:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
64 结果:D:\resin\webapps\TEST
65 6.2. 在类中取得路径:
66 (1)类的绝对路径:Class.class.getClass().getResource("/").getPath()
67 结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
68 (2)得到工程的路径:System.getProperty("user.dir")
69 结果:D:\TEST
70 6.3. 在Servlet中取得路径:
71 (1)得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。
72 结果:E:\Tomcat\webapps\TEST
73 (2)得到IE地址栏地址:request.getRequestURL()
74 结果:http://localhost:8080/TEST/test
75 (3)得到相对地址:request.getRequestURI()
76 结果:/TEST/test
分享到:
评论

相关推荐

    在JAVA文件中获取该项目的相对路径.doc

    在 JAVA 文件中获取项目的相对路径是非常重要的,特别是在 JSP/Servlet 中。下面将详细介绍在 JAVA 文件中获取项目的相对路径的相关知识点。 1. 绝对路径和相对路径的概念 在讨论获取项目的相对路径之前,我们需要...

    JAVA类,JSP,Servlet获取工程路径.txt

    JAVA类,JSP,Servlet获取工程路径.txt 总共罗列出了集中jsp servlet 在eclipse 里 获得项目工程路径的方法

    Java前端js获取当前项目路径

    获得当前项目的根路径,js写出的公共方法,可在jsp中直接调用

    ajax 获取文件路径

    ajax jsp获取本地文件夹所有的路径 根据文本框里的内容显示在画面上的一个小案例

    jsp中获得路径的两种方法和获得url路径的方法(推荐)

    <a>/XXX.jsp”> //这样获得的是绝对路径 <a> //这样获得的是相对路径 <a>/XXXX.jsp”> 能够更有效的防治连接的失效。 request.getContextPath()得到的是项目的名字,如果项目为根目录,则得到一个””,即空的字条串...

    在html页面使用JavaScript实行文件上传到本地服务器并获取文件所在路径

    使用JavaScript实现文件上传到本地服务器并获取到上传后文件所在路径,是由到...这个比较好,不是在jsp上获取路径,jsp太简单了,而且过时了,所以就在html页面实现了下功能,我主要是做出来插入到毕设项目中去。

    javax.servlet.jsp-api-2.3.3.jar

    web项目里面开发jsp页面的时候,使用action调用servlet里面get和post方法的时候需要这个jar包,来获取 请求路径的

    jsp Request获取url信息的各种方法对比

    假设请求的页面是index.jsp,项目是WebDemo,则在index.jsp中获取有关request对象的各种路径信息如下  String path = request.getContextPath(); String basePath = request.getScheme()+://+request....

    在jsp中下载文件

    第一中使用二进制流的方式,这样被文件的文件可以是随意地址,二不必使用“/”开头的路径;...第二种使用RequestDispatcher下载文件,这中下载方式的局限是被下载文件的路径必须以“/”开头,即在项目的webRoot下

    JSP的九个内置对象及四个作用域

    PageContext 对象是javax.servlet.jsp.PageContext类型,代表的是当前页面运行的一些属性,常用的方法有findAttribute、getAttribute、getAttributesScope和getAttributeNamesScope,一般情况下PageContext对象用到...

    新闻推荐系统

    基于用户兴趣标签的新闻推荐系统(毕业设计) 注意事项 界面的修改,均已index.jsp修改为主,在进行子界面的修改,保持统一性!...注意事项,jsp页面中的img标签添加获取项目名路径 ( request.getContextPath() ) 

    JS取得绝对路径的实现代码

    在项目中,我们经常要得到项目的绝对路径,方便我们上传下载文件,JS为我们提供了方法,虽说要迂回一下。代码如下: function getRealPath(){ //获取当前网址,如: http://localhost:8083/myproj/view/my.jsp ...

    JspRun!社区论坛系统 v6.0 bulid 090424 GBK 安装版.rar

    5、修复了上传附件的存放路径动态获取 6、修复了清空帖子回收站的时没有删除远程附件 7、修复了查看短消息空指针异常及关键字搜索短消息无效 8、修复了生存缓存文件截取修改时间异常 9、修复了禁止浏览器缓冲...

    C-ATM.zip jsp+servlet 项目【练手/总结/巩固】

    jsp+servlet 项目【练手/总结/巩固】。 所需要的jar包都在里面 源码都放里面了 总结一下: 1. 在JavaWeb中,页面跳转有两种方式:重定向和转发。 2. 重定向是通过发送特定的HTTP响应码告知浏览器请求的资源已被移...

    JspRun!社区论坛系统 v6.0 bulid 090423 GBK 源码版.rar

    5、修复了上传附件的存放路径动态获取 6、修复了清空帖子回收站的时没有删除远程附件 7、修复了查看短消息空指针异常及关键字搜索短消息无效 8、修复了生存缓存文件截取修改时间异常 9、修复了禁止浏览器缓冲...

    Android代码-YuanNews

    注意事项,jsp页面中的img标签添加获取项目名路径 ( request.getContextPath() )  原理图 架构-服务端 架构-客户端 主页-查询思路 推荐策略(后台) 推荐显示(前台) 推荐通知原理(Android) 爬虫原理 总的...

    JS获取当前网址、主机地址项目根路径

    //获取主机地址之后的目录如:/Tmall/index.jsp var pathName=[removed].pathname; var pos=curWwwPath.indexOf(pathName); //获取主机地址,如: http://localhost:8080 var localhostPaht=curWwwPath.substring(0...

    Python从多路径多Excel表中获取数据并存入新表.zip

    资源内容:项目全套源码+完整文档 源码说明: 全部项目源码都是经过测试校正后百分百成功运行。 SpringBoot 毕业设计,SpringBoot 课程设计,基于SpringBoot+Vue开发的,含有代码注释,新手也可看懂。ssm整合开发,...

    基于jsp+Servlet的投票管理系统-高分javaweb期末大作业+源代码+文档说明

    java代理实现get,set方法动态获取值 编写前端vue页面总体框架,编写后台代码交互 代码编写遇到的问题 问题: Vue使用问题 只有一个根路径 解决方案: 确保下只有一个根路径 - 不懂运行,下载完可以私聊问,...

    J2EE实验指导书*******

    ④配置项目构建路径添加SQL Server的JDBC驱动程序 14 2、JDBC实现CRUD操作 14 四、实验报告 15 实验三 JDBC进阶 16 一、实验目的 16 二、实验环境 16 三、实验步骤 16 1、在Eclispe中创建Java项目并编写DBConnection...

Global site tag (gtag.js) - Google Analytics