MultipartFile上传文件保持文件的MD5值不变java
时间: 2023-08-11 19:44:44 浏览: 248
利用MultipartFile实现文件上传功能
5星 · 资源好评率100%
在上传文件时,可以在服务端计算文件的MD5值,并将其保存到数据库中。在文件上传完成后,可以再次计算文件的MD5值,并和之前保存的MD5值进行比较,以确保文件的完整性。
以下是一个示例代码,用于计算文件的MD5值:
```java
public static String fileToMD5(MultipartFile file) throws IOException, NoSuchAlgorithmException {
MessageDigest md = MessageDigest.getInstance("MD5");
try (InputStream is = file.getInputStream()) {
byte[] buffer = new byte[8192];
int read = 0;
while ((read = is.read(buffer)) > 0) {
md.update(buffer, 0, read);
}
byte[] md5 = md.digest();
return DatatypeConverter.printHexBinary(md5);
}
}
```
在上传文件时,可以调用该方法来计算文件的MD5值,并将其保存到数据库中。当需要校验文件时,再次调用该方法计算文件的MD5值,并和之前保存的MD5值进行比较,以确保文件的完整性。
阅读全文