我写了一些基本的博客系统,该系统基于spring boot。我正在尝试找出如何创建包含视频和图像的帖子,而无需使用HTML编辑所有内容的方法。
现在,我将博客文章以纯文本格式保存在数据库中。是否可以创建结合了文本,图像和视频的内容,并将此“内容”保存为DB表中的一行,而无需在不同的表之间创建连接?
非常感谢。
图像和视频内容繁重,将它们存储在数据库中可能是一件昂贵的事情,除非您出于研究目的而开发应用程序。同样从数据库查询它并通过网络提供服务也会影响您的应用程序性能。
如果要将其存储在一行中,也可以使用数据库BLOB对象来完成。但我建议有2个不同的表。一个包含“图像和视频”的BLOB对象的对象,另一个是包含博客作为BLOB表的文本和主键的常用表。
如果要采用您的解决方案,由于以下因素,最好使用图像视频托管服务器
是对您的问题的严格回答,是的,您可以使用BLOB将视频/图像存储在数据库中。将它们视为包含视频或图像字节的列。
对于学校/您的视频/图像数量很少的情况,可能还可以。但是,如果您要构建一个真正的应用程序,请不要这样做:)
每个DBA都会提出很多担忧,“为什么不使用Blob”。
因此,更现实的方法是在AWS中找到一些“文件系统”,例如存储(但分布式)样式S3,如果不在云中则在服务器上hardrive,等等。
然后将那张大图像/视频存储在此处,并获取一个标识符(例如,如果我们谈论硬盘驱动器,则指向它的路径),并将该标识符以及您可能已经存储的元数据存储在数据库中(例如blogPostId,文件类型等)
一旦应用程序变得更加“成熟”,您就可以切换“提供者”-随着您的发展而增长。甚至还有专门为图像设计的云存储(例如Cloudinary)。