吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 686|回复: 10
收起左侧

[求助] Java 关于图片上传如何判断图片是否重复

[复制链接]
Z033 发表于 2023-7-13 23:00
最近在写一个JAVA项目,其中一个功能类似社区交流的,里面可以评论和发表动态,我设计表的时候将评论和评论的图片分开(因为用户可能评论好几张照片,当然设计成一张表然后按分隔符去取也是可以的),然后我评论表有个id绑定图片表,我就在想:如果A用户和B用户上传的是同一张图片,那么我的minIO不是存了两个图片,如果是表情包那么不是存的重复的图片更多了吗。那么该怎么让他不判断呢?我的思路是:上传时不判断,过后再判断,然后数据库存的链接换成同一个。写个定时任务,去minIO拿图片然后判断,一样的就把minIO的图片删掉然后去数据库修改字段。但是这样做是不是太浪费性能了?有必要吗?而且我感觉没办法实现。。。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

深巷丶 发表于 2023-7-14 10:33
上传的时候判断一下MD5码,数据库里有就换成已有链接

免费评分

参与人数 1热心值 +1 收起 理由
Z033 + 1 谢谢@Thanks!

查看全部评分

你猜啊 发表于 2023-7-14 10:39
扫描图片特征码然后存入数据库地址,当上传扫描如果重复那么就直接指向该图片minio的存储地址。
Songzhiqiang 发表于 2023-7-14 10:44
2楼那样就阔以,上传的时候判断下文件的md5,一样的话,就不用上传了,然后替换链接,没有的话,就上传,存个md5
好好学习多挣钱 发表于 2023-7-14 10:57
可以但是没必要,现在存储成本那么低
十三叔 发表于 2023-7-14 11:01
好好学习多挣钱 发表于 2023-7-14 10:57
可以但是没必要,现在存储成本那么低

为啥没必要    实现了这个功能   不就是实现了秒传吗
rainerosion 发表于 2023-7-14 11:03
其实感觉没必要,不过你可以数据库存储每个文件的md5或者sha值,上传的文件计算下sha或者md5,直接去数据库检索存在不
好好学习多挣钱 发表于 2023-7-14 11:08
十三叔 发表于 2023-7-14 11:01
为啥没必要    实现了这个功能   不就是实现了秒传吗

他是保存图片,不是保存大文件。用户上传的图片重复率不高的(当然想故意攻击你的,md5去重复也防不住)
origamiii 发表于 2023-7-14 11:18
本帖最后由 origamiii 于 2023-7-14 11:51 编辑

看代码吧,应该可行。如果md5重复,可以换其他算法,当然也可以叫用户去买彩票。
使用的类库是apache的;没看有没有关流,没有的话,记得自己把流关了。
import org.apache.commons.codec.digest.DigestUtils;
QQ截图20230714111714.png
dreamstony 发表于 2023-7-14 11:45
感觉没这个必要,用MD5不可行。
比如用户截图上传,不同的手机截图(一样的图片)上传的MD5是不同的。
除非评论中的图片是服务端提供,用户只能选择图片。如果是这样更没必要,可以换一种业务逻辑。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:37

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表