通过ServletContext访问WAR/WEB-INF目录中的资源
简介:
Java Web 应用程序通常将重要资源存储在 WAR/WEB-INF 目录中。要访问这些资源,开发人员可以利用 ServletContext API。
问题:
如何创建位于 WAR/WEB-INF 中的资源的正确路径文件夹,例如"/war/WEB-INF/test/foo.txt"?
答案:
构建WAR/中的资源路径主要有两种方法使用ServletContext的WEB-INF目录:
1. getRealPath() 方法:
如果 WAR 文件已展开为一组文件,则可以使用 getRealPath() 方法:
ServletContext context = getContext(); String fullPath = context.getRealPath("/WEB-INF/test/foo.txt");
这将返回资源的完整系统路径。
2. getResource() 或 getResourceAsStream() 方法:
无论 WAR 文件是否展开,都可以使用这些方法:
ServletContext context = getContext(); URL resourceUrl = context.getResource("/WEB-INF/test/foo.txt"); // for URL InputStream resourceContent = context.getResourceAsStream("/WEB-INF/test/foo.txt"); // for input stream
附加说明:
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3