栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

访问webapp外部的文件(Tomcat V6和Spring)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

访问webapp外部的文件(Tomcat V6和Spring)

一个

Servlet
或资源处理程序不能仅仅从文件系统提供文件直接。您需要编写自己的
@Controller
处理程序方法。例如

@Controllerpublic class ImagesController {    public static final String base_PATH = "/opt/uploads/contactImages";    @RequestMapping(value = "/{fileName}" , method = RequestMethod.GET)     public ResponseEntity<FileSystemResource> getFile(@PathVariable("fileName") String fileName) {        FileSystemResource resource = new FileSystemResource(new File(base_PATH, fileName));        ResponseEntity<FileSystemResource> responseEntity = new ResponseEntity<>(resource, HttpStatus.OK);        return responseEntity;    }}

使用

ResponseEntity
该类,您还可以设置不同的响应头和状态代码。

您现在可以在以下位置访问以上内容

http://localhost:8080/images/file.png

我认为以上内容不适用于嵌套目录中的文件。


请注意,

docbase
在属性

<Context docbase="/opt/uploads/contactImages/" path="/images" />

是不正确的。该

docbase
属性指定

此Web应用程序的文档库(也称为上下文根)目录,或Web应用程序存档文件的路径名(如果直接从WAR文件执行此Web应用程序)。您可以为此目录或WAR文件指定绝对路径名,或者相对于所属主机的appbase目录的相对路径名。

因此,它必须指向您的Web应用程序,而不是指向存储文件的随机目录。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/636052.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号