首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JSP + 數據庫實現回收站功能:軟刪除與還原/徹底刪除設計

     編輯:程式設計綜合問答

核心思路:軟刪除

在業務表增加 is_deleted TINYINT(1) DEFAULT 0 字段(或 deleted_at DATETIME NULL)。

操作映射

操作SQL 邏輯
刪除到回收站UPDATE table SET is_deleted = 1 WHERE id = ?
列表頁查詢SELECT * FROM table WHERE is_deleted = 0
回收站頁查詢SELECT * FROM table WHERE is_deleted = 1
還原UPDATE table SET is_deleted = 0 WHERE id = ?
徹底刪除DELETE FROM table WHERE id = ?

JSP/Controller 實現要點

  • 列表頁 Controller 統一添加 is_deleted = 0 條件(可用攔截器或 BaseDAO 封裝)。
  • 回收站頁單獨查 is_deleted = 1,提供「還原」「徹底刪除」按鈕。
  • 徹底刪除前建議二次確認,防止誤操作。

進階:獨立回收站表

若主表數據量極大、頻繁查詢,可建立 table_trash 結構同主表,刪除時 INSERT INTO table_trash SELECT * FROM table WHERE id=?; DELETE FROM table WHERE id=?,主表保持精簡,回收站獨立存儲。

總結

「加字段 + 邏輯過濾」是最通用、改動最小的回收站實現,適合中小項目;大數據量場景可拆表歸檔。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved