正如JB Nizet在评论中指出的,最好的方法是
根本不将文件存储在磁盘上
.
如果在将请求返回到客户机之后,您的特定上下文在磁盘上留下了文件,那么可以使用下一种方法来除去它们。
class CleanupInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
// do cleanup here
}
}
如果有人找到一个更优雅的解决方案来解决这个问题,请把你的答案贴在这里。