我有一个web归档,其中一个文件放在WEB-INF目录中。
如何在java类中加载该文件?
我知道我可以把它放在classes目录中,然后从那里加载它。只需将其放入WEB-INF即可。
发布于 2009-07-10 08:46:22
在ServletContext对象上使用getResourceAsStream()
方法,例如
servletContext.getResourceAsStream("/WEB-INF/myfile");
如何获得对ServletContext的引用取决于您的应用程序...您希望从Servlet还是从JSP执行此操作?
编辑:如果您在Servlet对象中,则调用getServletContext()
。如果您使用的是JSP语言,请使用预定义变量application
。
发布于 2017-06-23 05:17:38
访问我在java (jersey)服务器中创建的sqlite db文件时出现的问题完全是由于path造成的。一些文档说jdbc连接url应该看起来像"jdbc:sqlite://path-to-file/sample.db“。我认为双斜杠是htt协议样式路径的一部分,在部署时可以正确映射,但实际上,它是绝对路径或相对路径。所以,当我把这个文件放在WebContent文件夹(tomcat项目)的根目录下时,像这样的uri就可以使用"jdbc:sqlite:sample.db“了。
让我吃惊的是,当我单步执行调试器时,我收到一条消息,上面写着“打开数据库:...权限被拒绝”。我认为这是文件系统权限或sql用户权限的问题。在发现SQLite没有MySQL等角色/权限的概念后,我最终更改了文件权限,然后才得出我认为是正确的解决方案,但我认为这只是一条坏消息(即权限被拒绝,而不是找不到文件)。
希望这对某些人有帮助。
https://stackoverflow.com/questions/1108434
复制相似问题