web项目的WebRoot/user/user.xml这个路径,在java里中该如何读取这个文件…
1、使用JSP Servlet取得WEB根路径可以用request.getContextPath(),相对路径request.getSession().getServletContext().getRealPath(/),它们可以使用我们很容易取得根路径。
2、这种方式只能是该class在WebRoot/WEB-INF/classes下才能生效, 如果该class被打包到一个jar文件中, 则该方法失效。这时就应该用下面一种方式。
3、XMLS.class.getClass().getResourceAsStream(/test/test.xml);解释:XMLS.class.getClass()是获取当前的类编译路径,之后通过getResourceAsStream的形式即可找到要读取的文件的路径。
4、在jsp和class文件中调用的相对路径不同。 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty(user.dir)获取你工程的绝对路径。
5、我看了下,估计你这个项目还是未打包的,对吧。你目录应该有个bulid.xml,因为测试的时候都需要部署测试,也就是要把项目先打包。你打完包之后有解压工具在查看目录,会发现WEB-INF目录下有那几个配置文件的。
javaweb项目读取本机文件问题
1、相对路径的话,可以先获取到当前文件的编译路径,之后在找到想找文件的路径的思路来实现。
2、应该是配置文件的问题,把 这个项目的所有源文件跟配置文件还有包都复制到另一个新的项目工程里试试。如果你是用ecipse 删除过tomcat配置的话,很有可能是前一个tomcat的JavaEE的包包还在当前项目配置中,重新配置一下就好了。
3、Web文件上传采用POST的方式,与POST提交表单不同的是,上传文件需要设置FORM的enctype属性为multipart/form-data.由于上传的文件会比较大,因此需要设置该参数指定浏览器使用二进制上传。
4、No such file or dirctiroy ,但文件确定存在,路径也是正确的,那应该是权限的问题了。
5、在A里面放置了一个配置文件test.properties, 就放在jar的根目录下。A.jar |___test.properties 在M中有一段代码回去读取这个A.jar里的配置文件,简单一点就用下面这句话来调用。
java怎么读取web工程里面的文件
1、方式一:采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来。因为是用ServletContext读取文件路径,所以配置文件可以放入在web-info的classes目录中,也可以在应用层级及web-info的目录中。
2、A.jar |___test.properties 在M中有一段代码回去读取这个A.jar里的配置文件,简单一点就用下面这句话来调用。
3、具体操作是右击工程,选择“Configure buildpath”,根据Maven的要求,把src/main/java和src/main/resources都加进去,并且保证Exclude是none,Include是all,或者至少要包括你需要读取的文件。
4、http的话就用httpclient。open后,可以返回一个InputStream。这个就是你要读到文件流。原理的话,参考你用浏览器打开这个链接显示的内容。
我想在java类里获取web项目的路径,比如我将项目放在D:/,项目名称为test…
但现在不提倡使用request.getRealPath(/)了,大家可试用ServletContext.getRealPath(/)方法得到Web应用程序的根目录的绝对路径。
在tomcat运行项目时点开servers,Location就是你的路径啊,或者你点击右侧的文件夹直接进入路径。
这个得到的是相对路径,不一定是固定的。也就是得到你web项目布署的路径。
不要用user.dir,这个是根据你的运行环境改变的。我也做过很多有upload的项目,都是用property文件定义一个绝对路径去存放上传的文件的。服务器端没有必要使用相对路径。