分布式存储开发实战:基于MongoDB文件服务器

OKX欧易app

OKX欧易app

欧易交易所app是全球排名第一的虚拟货币交易所,注册领取6万元盲盒礼包!

APP下载   官网注册

实战:基于MongoDB文件服务器

本节,我们将介绍如何基于MongoDB技术来存储二进制文件,从而实现一个文件服务器MongoDBFileServer。

文件服务器的需求

本文件服务器致力于小型文件的存储,比如博客中的图片、普通文档等。由于MongoDB支持多种数据格式的存储,对于二进制的存储自然也是不在话下,所以可以很方便地用于存储文件。由于MongoDB的BSON文档对于数据量大小的限制(每个文档不超过16MB),所以本文件服务器主要针对的是小型文件的存储。对于大型文件的存储(比如超过16MB),MongoDB官方已经提供了成熟的产品GridFS,读者朋友可以自行了解。

文件服务器应能够提供与平台无关的REST API供外部系统调用。

文件服务器整体的API设计如下。

·GET /files/{pageIndex}/{pageSize}:分页查询已经上传了的文件。·GET /files/{id}:下载某个文件。·GET /view/{id}:在线预览某个文件。比如,显示图片。·POST /upload:上传文件。·DELETE /{id}:删除文件。

我们创建一个新项目,称之为mongodb-file-server。

所需技术

本例子采用的开发技术如下。

·MongoDB 3.4.6。·Spring Boot 2.0.0.M2。·Spring Data MongoDB 2.0.0.M4。·Thymeleaf 3.0.6.RELEASE。·Thymeleaf Layout Dialect 2.2.2。·Embedded MongoDB 2.0.0。

其中,Spring Boot用于快速构建一个可独立运行的Java项目;Thymeleaf方便展示数据;Embedded MongoDB则是一款由Organization Flapdoodle OSS出品的内嵌MongoDB,可以在不启动MongoDB服务器的前提下,方便进行相关的MongoDB接口测试。

本文所演示的项目,是采用Gradle进行组织以及构建的,如果对Gradle不熟悉,也可以自行将项目转为Maven项目。

build.gradle文件完整配置内容如下。

buildscript{ // buildscript代码块中脚本优先执行 // ext用于定义动态属性 ext { springBootVersion = "2.0.0.M2" } // 使用了Maven的中央仓库(也可以指定其他仓库) repositories { //mavenCentral m

本站所有软件信息均由用户上传发布,版权归原著所有。如有侵权/违规内容,敬请来信告知邮箱:764327034@qq.com,我们将及时撤销! 转载请注明出处:https://czxurui.com/zx/11219.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年07月09日
下一篇 2023年07月09日

相关推荐

  • 钱包备份文件放哪里,钱包备份怎么样使

    一、钱包备份怎么样使钱包备份怎么使用钱包备份是保护你的数字资产免受数据丢失或被盗的一种方式。一旦你的数字钱包备份成功,你可以随时使用备份文件来恢复你的数字钱包。下面是使用数字钱包备份的步骤:1.打开你的数字钱包软件,找到“备份”选项。不同的数字钱包软件可能会

    2024-11-09 11:00:02
    12 0
  • wallet什么文件,比特币wallet文件打开

    一、比特币wallet文件打开你是问怎么打开wallet文件是吧,可参考以下步骤。要以多位格式创建WALLET文件,请选择文件-新建WALLET命名文件,选择保存位置,从“文件格式”下拉菜单中选择“多位*WALLET*”,然后单击“保存”。要以多位方式打开WALLET文件,只需双击该文件或选择

    2024-11-06 20:00:02
    16 0
  • 欧意国内怎么下载

    本文目次导读:欧意国内怎么下载?选择适宜的下载平台搜刮您需要的文件点击下载按钮期待下载完成安拆或翻开下载的文件欧意国内怎么下载?在欧意国内下载软件、游戏或其他文件是一件十分遍及的工作,但是关于一些不熟悉那个过程的人来说可能会感应猜疑。在本文

    2024-05-28 03:00:23
    191 0
  • 欧意下载利用教程 欧意下载利用教程及欧意怎么下载

    本文目次导读:欧意欧意下载利用教程欧意怎么下载欧意欧意是一款十分受欢送的手机应用法式,它能够帮忙用户快速下载各类类型的文件,包罗视频、音乐、图片等,欧意具有强大的下载功用和简洁的用户界面,使得用户能够轻松快速地找到并下载本身需要的文件,无论

    2024-05-06 12:00:04
    301 0
  • 什么是文件币 什么是文件币及什么叫文件币

    本文目次导读:文件币什么叫文件币文件币文件币是一种数字货币,它差别于传统的加密货币,它的价值不单单表现在交易和投资,更多的是在于其在文件存储和共享范畴的应用,文件币的概念起源于区块链手艺,它操纵去中心化的收集和加密算法来保障文件的平安性和可

    2024-04-14 22:16:23
    80 0
  • 什么是文件币 什么是文件币?领会文件币的概念、特点和应用

    本文目次导读:文件币的概念文件币的特点文件币的应用文件币的概念文件币是一种基于区块链手艺的数字货币,它的次要功用是用于付出文件传输和存储办事。文件币的概念源自于对传统存储办事的改良和立异,通过区块链手艺的去中心化特点,实现了愈加平安、高效和

    2024-04-13 13:17:23
    84 0

发表回复

8206
验证码

评论列表(0条)

    暂无评论

ok交易所
已有100万用户加入ok交易所

立即下载