0

我将图像存储在外部文件中,同时在数据库记录中只保留它们的路径。但是如果删除了适当的记录,我想删除一个文件。

我应该如何通过文件删除来扩展删除操作?

4

2 回答 2

0

有多个问题:

  • 如果文件无法删除怎么办?是否应该删除数据库条目?
  • 如果交易失败怎么办?
  • 如果文件已经被删除了怎么办?

您不能将字节数据保存在数据库本身中吗?

于 2012-09-27T08:42:21.163 回答
0

您可以使用休眠拦截器。

一般来说,您必须以类似的形式扩展 EmptyInterceptor 和覆盖方法

public void onDelete(Object entity, Serializable id, 
    Object[] state, String[] propertyNames, 
    Type[] types) {

    System.out.println("onDelete");

    if (conditionOnFileDeletionIsMet()){
        deleteFile();
    }
}

更详细的例子在这里这里。文档在这里

于 2015-08-29T19:55:51.677 回答