javawebjava文件路径|Java web项目访问路径问题求解啊!

javawebjava文件路径|Java web项目访问路径问题求解啊!的第1张示图

⑴ java web 怎么获取文件路径

以工程名为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

⑵ 怎么在一个java程序里获得当前web应用的路径

在java中获得文件的路径在我们做上传文件操作时是不可避免的。 web 上运行 1:this.getClass().getClassLoader().getResource("/").getPath(); this.getClass().getClassLoader().getResource("").getPath(); 得到的是 ClassPath的绝对URI路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/System.getProperty("user.dir");this.getClass().getClassLoader().getResource(".").getPath(); 得到的是 项目的绝对路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war2:this.getClass().getResource("/").getPath(); this.getClass().getResource("").getPath(); 得到的是当前类 文件的URI目录。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/com/jebel/helper/this.getClass().getResource(".").getPath(); X 不 能运行3:Thread.currentThread().getContextClassLoader().getResource("/").getPath()Thread.currentThread().getContextClassLoader().getResource("").getPath() 得到的是 ClassPath的绝对URI路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war/WEB-INF/classes/Thread.currentThread().getContextClassLoader().getResource(".").getPath() 得到的是 项目的绝对路径。如:/D:/jboss-4.2.2.GA/server/default/deploy/hp.war在本地运行中1:this.getClass().getClassLoader().getResource("").getPath(); this.getClass().getClassLoader().getResource(".").getPath(); 得到的是 ClassPath的绝对URI路径。如:/D:/myProjects/hp/WebRoot/WEB-INF/classesthis.getClass().getClassLoader().getResource(".").getPath(); X 不 能运行2:this.getClass().getResource("").getPath(); this.getClass().getResource(".").getPath(); 得到的是当前类 文件的URI目录。如:/D:/myProjects/hp/WebRoot/WEB-INF/classes/com/jebel/helper//D:/myProjects/hp/WebRoot/WEB-INF/classes/ 得到的是 ClassPath的绝对URI路径。如:/D:/myProjects/hp/WebRoot/WEB-INF/classes 3:Thread.currentThread().getContextClassLoader().getResource(".").getPath()Thread.currentThread().getContextClassLoader().getResource("").getPath() 得到的是 ClassPath的绝对URI路径。。如:/D:/myProjects/hp/WebRoot/WEB-INF/classesThread.currentThread().getContextClassLoader().getResource("/").getPath() X 不 能运行最后 在Web应用程序中,我们一般通过ServletContext.getRealPath("/")方法得到Web应用程序的根目录的绝对路径。还有request.getContextPath(); 在Weblogic中要用request.getServletContext().getContextPath();但如果打包成war部署到Weblogic服务器,项目内部并没有文件结构的概念,用这种方式是始终得到null,获取不到路径,目前还没有找到具体的解决方案。

⑶ java web中读取文件,相对路径怎么写

相对路径的话,可以先获取到当前文件的编译路径,之后在找到想找文件的路径的思路来实现内。容举例: XMLS.class.getClass().getResourceAsStream("/test/test.txt");解释:XMLS.class.getClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。备注:这个方法中后面的路径也可以通过截取的形式来进行路径获取,实现原理都是找到当前类路径,之后通过相对位置找到另外文件路径。

⑷ Javaweb中路径的问题

“/”是网络路径,表示根目录

“./”表示当前目录

“../”表示父级目录

“”是DOS下的盘符路径,也用于局域网或本地硬盘的路径

“..”表示项目文件所在目录向上一级目录

⑸ java web项目中,文件位置

来publicstaticvoidmain(String[]args)throwsException{自PropertiesenProp=newProperties();FileInputStreamfis1=newFileInputStream("src/config.properties");enProp.load(fis1);fis1.close();}

如果是src同级目录是这样,如果你放在包里面"src/com/servlet/MyServlet/config.properties"

⑹ Java web项目访问路径问题。求解啊!

images的url写成复src="${pageContext.request.contextPath}/images/logo.jpg"

一般会制把${pageContext.request.contextPath}这部分提取出来,在jsp写成:

<% String path = request.getContextPath();%>

如图:

则images路径可以写成src="<%=path%>/images/logo.jpg"

访问login.jsp页面的话,写成http://ip:端口号/CityInfo/pages/login.jsp

⑺ java web工程,读取配置文件路径问题

读取配置文件 , xxx.properties放在/WEB-INF/classes/目录下首先将配置文件转换成InputStream,有两种方式,原理一样,都是通过类加载器得到资源:(1)InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("xx.properties");(2) InputStream inputStream =this.getClass() .getClassLoader().getResourceAsStream( "xx.properties" );调用对象的getClass()方法是获得对象当前的类类型,这部分数据存在方法区中,而后在类类型上调用 getClassLoader()方法是得到当前类型的类加载器,我们知道在Java中所有的类都是通过加载器加载到虚拟机中的,而且类加载器之间存在父 子关系,就是子知道父,父不知道子,这样不同的子加载的类型之间是无法访问的(虽然它们都被放在方法区中),所以在这里通过当前类的加载器来加载资源也就 是保证是和类类型同一个加载器加载的。最后调用了类加载器的getResourceAsStream()方法来加载资源。(3) 然后加载配置文件,读取属性值Properties prop = new Properties();prop.load(input);String value = prop.getProperty("PropertyName");input.close();

⑻ javaweb如何将文件保存到服务器的指定目录

可以把文件目录配置在web.xml文件的初始化参数中, 通过ServletAPI读取文件目录

比如

定义一个Properties文件保存相关配置

#可以上传文件的后缀名

extensions=pptx,docx.doc,txt,jpg,jar

#单个文件的大小1M

fileMaxSize=1048576

#总共上传文件大小5M

totalFileMaxSize=5242880

#文件保存路径

filePath=z:/temp

#临时文件路径

tempDir=z:/temp/temp

使用Listener在服务器启动时加载配置信息

ServletContextcontext=event.getServletContext();InputStreaminputStream=context.getResourceAsStream("/WEB-INF/classes/file/upload/commons/uploadConfig.properties");Propertiesproperties=newProperties();try{properties.load(inputStream);context.setAttribute("fileConfig",properties);System.out.println("properties="+properties.size());}catch(IOExceptione){e.printStackTrace();}

在你上传文件时通过配置文件读取路径保存

String filePath = ((Properties) this.getServletContext().getAttribute("fileConfig"))

.getProperty(FileUploadConstants.FILE_PATH);

⑼ javaweb中怎么获取文件的绝对路径

在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径。另:在Jsp,Servlet,Java中详细获得路径的方法!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 2.在类中取得路径: (1)类的绝对路径:String u=Class.class.getClass().getResource("/").getPath() 结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/ (2)得到工程的路径:System.getProperty("user.dir") 结果:D:/TEST 3.在Servlet中取得路径: (1)得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。 结果:E:/Tomcat/webapps/TEST (2)得到IE地址栏地址:request.getRequestURL() (3)得到相对地址:request.getRequestURI() 结果:/TEST/test

⑽ 如何在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/

通过这个路径你就能获取该文件夹下的所有文件啦

未经允许不得转载:山九号 » javawebjava文件路径|Java web项目访问路径问题求解啊!

赞 (0)