表單帶圖片提交上來,先保存圖片,圖片保存完之后把路徑存到數(shù)據(jù)庫得到id,再把id賦給表單對象實體;如果在圖片保存完之后,后面保存表單sql出現(xiàn)異常需要回滾,sql可以回滾,我想把之前上傳的文件再給刪除需要怎么樣實現(xiàn)呢?@Transactional(rollbackFor = Exception.class)public int insert(Form form, MultipartFile file) throws IOException { if (!file.isEmpty()) { // 這里的操作會先把文件保存到磁盤,然后將路徑信息保存到數(shù)據(jù)庫,再返回路徑信息
form.setImage(sysFileService.upLoad(file).getId());
} return mapper.insert(form);
}發(fā)生事物異常時可以手動指定異常處理類,我可以重寫一個異常處理類,傳文件上傳后的一些路徑信息過去再把這個文件刪除嗎?
1 回答

紅顏莎娜
TA貢獻1842條經(jīng)驗 獲得超13個贊
可以考慮不用用form
提交圖片,用上傳組件先上傳圖片到專門的附件表,返回id,表單帶著附件id提交后臺,回滾時候,根據(jù)附件id找到圖片路徑刪除圖片,刪除附件表記錄
添加回答
舉報
0/150
提交
取消