我正在我的 Spring Controller 中处理两个不同的多部分文件。
然后将这两个文件发送到服务以设置实体。但是,如果两者或其中之一为空,则会抛出 NullPointerException
。如何检查两个文件 (projectImg
/chartImg
) 是否为空?
到目前为止,这是我的代码:
public void uploadImages(MultipartFile projectImg, MultipartFile chartImg, Long projectId) throws ValidationException, IOException {
Project project = projectRepository.findOne(projectId);
Project save = projectRepository.save(project);
int maximumSizeMB = 15000000;
if (!projectImg.isEmpty()) {
if (projectImg.getSize() > maximumSizeMB) {
throw new ValidationException("Image size is too big. Maximum size is 15 MB");
}
byte[] projectFile = ImageCompression.compressImage(projectImg);
project.setProjectImg(projectFile);
save.getProjectImg();
}
if (!chartImg.isEmpty()) {
if (chartImg.getSize() > maximumSizeMB) {
throw new ValidationException("Image size is too big. Maximum size is 15 MB");
}
byte[] chartFile = ImageCompression.compressImage(chartImg);
project.setChartImg(chartFile);
save.getChartImg();
}
projectRepository.save(project);
}
谢谢!
最佳答案
只是为了让您接受答案并且这个问题不会保持“未回答”状态,我将发表我的评论作为答案:
你可以调用
if (projectImg != null) { ... }
之前或代替
if (projectImg.isEmpty()) { ... }
关于java - 多部分文件的空检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46934460/