❶ J2EE web项目,绝对路径和相对路径如何设置与获取
在开发Web方面的应用时, 经常需要获取服务器中当前WebRoot的物理路径。
如果是Servlet , Action , Controller, 或者Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址。
如果在类中取不到ServletContext时,有两种方式可以做到:
(1)利用Java的类加载机制:调用 XXX.class.getClassLoader().getResource(""); 方法来获取到ClassPath , 然后处理获得WebRoot目录。这种方式只能是该class在WebRoot/WEB-INF/classes下才能生效, 如果该class被打包到一个jar文件中, 则该方法失效。这时就应该用下面一种方式。
(2)spring框架的思路,在WEB-INF/web.xml中,创建一个webAppRootKey的param,指定一个值(默认为webapp.root)作为键值,然后通过Listener, 或者Filter,或者Servlet 执行String webAppRootKey = getServletContext().getRealPath("/"); 并将webAppRootKey对应的webapp.root 分别作为Key,Value写到System Properties系统属性中。之后在程序中通过System.getProperty("webapp.root")来获得WebRoot的物理路径。
❷ java web项目 相对路径怎么写
servlet里面通过String basePath=session.getServletContext().getRealPath("/");获取webRoot目录真实路径。
比如d:\tomcat 6\webapps\项目名
webRoot下面的resources目录通过File path = new File(basePath, "resources");获取
其它同理
如果是jsp的话,获取resources目录直接通过“<%=request.getContextPath()%>/resources”获取
❸ web中html中的相对路径和绝对路径怎么找
路径是指文件在服务器中的存储位置。我们在使用计算机时要找到所需的文件时就必须知道文件的绝对路径,例如,只要看到这个路径d:/web/logo.gif,我们就知道logo.gif文件是在d盘的web目录下。类似于这样完整的描述文件位置的路径就是绝对路径。
绝对路径还有一种表示方法就是以服务器命名开始(如在本机中http://localhost)的完整描述文件位置的路径,如通过IIS简历一个站点,站点下面有个文件叫test.htm,那么用绝对路径来显示这个文件就是http://localhost//test.htm。
相对路径主要用在我们的网站上,当ASP在发布一个目录时,如果在Web上也像d:/web/test.htm一样,就不会显示在正常的页面。这时需要通
过站点来访问相对目录,网页上所有Web页面程序和所显示的图片都是通过相对路径来访问的。如里面的图片访问就是images/logo.gif我们可以
用"../"来表示上一级目录,"../../"表示上上级目录,依此类推。
❹ javaweb工程webroot下的页面里写img src的相对路径,请问这个路径是在tomcat
相对路径是相对项目里的路径,比如eclipse中项目中webroot下面就是跟路径
❺ Java Web项目的相对路径问题
我是这么弄的
String realPath = request.getSession().getServletContext()
.getRealPath("\\");// 项目磁盘路径
再在后面加上你想要的路径
祝你顺利!
❻ web页面连接是有相对路径和绝对路径,他们之间有什么区别和联系
绝对路径是指比如你把这个index.html页面放在电脑的真实位置,如:我D:\webapps\index.html,那这个index.html的绝对路径就是你电脑上的真实路径"D:\webapps\index.html"
相对路径是指,如果你要把一个web页面发布,让别的电脑能够访问,那么你必须将此页面放在一个服务器的目录,如这个服务器的目录是在"D:\webapps"那么你的网站的index.html的相对路径就就是"\index.html",如果你页面还包含了一些图片文件,图片文件又另外存放在一个文件夹,如"\img\a.jpg",那么你这张图片的绝对路径就是"D:\webapps\img\a.jpg",你这张图片的相对路径就是"\img\a.jpg".
❼ 如何在java web项目中获得相对路径
第一步: 先获得classpath路径
Stringclasspath=this.getClass().getResource("/").getPath().replaceFirst("/","");
这样子可以得到classpath路径,类似于:
F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/WEB-INF/classes/
然后把WEB-INF/classes截取就能获得WebAPP目录啦:
StringwebappRoot=classpath.replaceAll("WEB-INF/classes/","");
得到的结果就是:
F:/projects/JavaStudyParent/study-springmvc-junit-test/target/springmvc-junit-test/
通过这个路径你就能获取该文件夹下的所有文件啦
❽ java web的相对路径问题!有经验的程序员来回答一下!
System.out.println(this.getClass().getResource("/db.properties").getPath());
--这个类的位置为/
运行期就是class了;
InputStream
is
=this.getServletContext().getResourceAsStream("/WEB-INF/classes/db.properties");
--这个web应用所在目录为/
运行起就是webapps/xapp/了;
FileInputStream
is
=
new
FileInputStream(new
File("../webapps/DAY_06/WEB-INF/classes/db.properties"));
--File需要绝对路径,启动位置为webserver/bin;
❾ 相对路径和绝对路径的区别是什么
相对路径和绝对路径的区别是:
1、绝对路径:就是文件在本地硬盘上的真正路径即URL和物理路径。
2、相对路径:相对与某个基准目录的路径(一般针对web目录而言,包含Web的相对路径)。在网络中,以http开头的链接都是绝对路径,绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,绝对路径一般在CGI程序的路径配置中经常用到,而在制作网页中实际很少用到。
3、其实绝对路径与相对路径的不同处,只在于描述目录路径时,所采用的参考点不同。由于对网站上所有文件而言,根目录这个参考点对所有文件都是一样的,因此,运用以根目录为参考点的路径描述方式才会被称之为绝对路径。
❿ web开发中相对路径问题
找XML 是用绝对路径的 只有WEB 上用的才是相对路径(比如图片)
所以要先找到TOMCAT(容器)的位置
String file = this.getServletContext().getRealPath("");
可以找到 项目的根目录 (就是WebRoot)如果找/WebRoot/show/index.jsp 可以
String file = this.getServletContext().getRealPath("");
file = file + “\\show\\index.jsp”