2023 mongodb GridFS整合SpringBoot

接了个,为了节约成本以及提高开发效率,文件存储和数据存储都用的是mongodb,网上找了一大堆gridfs的案例,发现都不好用,嗯,,,自己动手写吧,仅供参考。

核心pom配置
在这里插入图片描述

service下载文件代码
在这里插入图片描述

为了适应多个bucket,自定义多个GridFsTemplate
在这里插入图片描述

最后,测它
在这里插入图片描述

结果
在这里插入图片描述

嗯,就是这么简单
ps:解释个东西哈,用navicat上传的文件,在”内容类型(contentType)“字段有值,但是通过接口上传的,此字段无值,而是在”元数据(metadata)“中,而通过接口获取 contentType 的时候,它又获取的是metadata中的值。

源码上传了,可参考https://gitee.com/mose-x/grid-fs.git

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Spring Boot与MongoDBGridFS结合使用可以实现大文件的存储和管理。GridFSMongoDB提供的一种存储和检索大文件的机制,它将大文件切分成多个小文件块进行存储,同时提供了便捷的API进行文件的上传、下载、删除和查询操作。 要在Spring Boot中使用GridFS,首先需要添加MongoDBGridFS的依赖。在pom.xml文件中添加以下依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb-gridfs</artifactId> </dependency> ``` 接下来,需要配置MongoDB的连接信息。在application.properties或application.yml文件中添加以下配置: ```properties spring.data.mongodb.uri=mongodb://localhost:27017/mydatabase ``` 然后,创建一个实体类来表示要存储的文件。可以使用Spring Data MongoDB提供的GridFsResource类来操作文件的上传和下载。下面是一个示例: ```java import org.springframework.data.mongodb.gridfs.GridFsResource; public class FileEntity { private String id; private String filename; private GridFsResource resource; // getters and setters } ``` 接下来,可以使用GridFsTemplate类来进行文件的上传、下载和查询操作。可以通过自动注入GridFsTemplate来使用它的方法。下面是一个示例: ```java import org.springframework.beans.factory.annotation.Autowired; import org
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mose-x

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值