因为该框架有现成的工具,因此相对较为简单
List<String> iamgeList=new ArrayList<>();
for(long id:ids){
TBanner tBanner= tBannerService.selectTBannerById(id);
String image=tBanner.getImage();
iamgeList.add(image);
}
int row=tBannerService.deleteTBannerByIds(ids);
if(row>0){
for (String iamge:iamgeList){
String localPath=RuoYiConfig.getProfile();
String downloadPath=localPath+StringUtils.substringAfter(iamge,Constants.RESOURCE_PREFIX);
FileUtils.deleteFile(downloadPath);
}
}
示例:
iamgeList:取到的图片路径为 [http://localhost:9099/profile/upload/2021/04/28/76b52f79-573f-479e-85d0-7fd84a0d59c6.jpg]
localPath的字符串为:D:/ruoyi/uploadPath
通过StringUtils.substringAfter截取字符串;Constants.RESOURCE_PREFIX表示的固定值,为/profile
意思是截取图片路径的/profile以后的字符串;
然后合并字符串,得到图片的绝对路径为D:/ruoyi/uploadPath/upload/2021/04/28/76b52f79-573f-479e-85d0-7fd84a0d59c6.jpg;
最后执行删除方法FileUtils.deleteFile(downloadPath);
是不是很简单