0

我需要在我的 Spring MVC 应用程序中读取 MS-Excel (.xlsx),对其进行编辑并按需发送给用户。在我的开发站本地,我使用

String path = "c:/dev/workspace/SCF-trend/web/WEB-INF/files/";
File template = new File(path + "trendline-template.xlsx");

但是一旦我部署了这个应用程序,我就失去了路径。

我该怎么做才能让应用程序理解路径?

我尝试使用此处提供的 ServletContext 方法作为以下问题的答案,但它不起作用。

Spring MVC 获取WEB-INF下的文件无需请求

我该如何解决这个问题?想法是最受欢迎的!

4

1 回答 1

1

如果它是 webapp 资源,只需将其作为 webapp 资源获取,而不是通过ServletContext#getResourceAsStream().

InputStream input = servletContext.getResourceAsStream("/WEB-INF/files/trendline-template.xlxs");
// ...

java.io.File永远不要在部署文件夹上使用和朋友。这是可移植性问题和灾难的秘诀。

也可以看看:

于 2013-07-16T13:08:31.453 回答