1. 前言
針對資料的增加、修改、刪除和查詢是應用軟體系統中最常使用的功能。作為軟體開發人員,如何有效率的實現上述功能,並且能夠保證系統資料的正確性、規範性和有效性是非常重要的。
本文結合自己在專案實務中完成的增刪改查功能,分析並總結實現增刪改查功能的開發過程和方法,以便在後續的開發工作中較好的完成類似功能的開發。
2. 開發過程與方法
增加功能
增加功能主要是將使用者在頁面中輸入的資料項目儲存到資料表中對應的資料表欄位中。
可以採用以下的步驟進行分析與實作:
結合業務需要,分析頁面上需要使用者輸入哪些資料項目?
需要輸入哪些資料項?
每個資料項目的輸入方式(文字方塊輸入、下拉清單輸入、checkbox輸入、radio輸入)和校驗規則(非空校驗、欄位類型、欄位長度、欄位格式)是什麼?
輸入資料項目與資料表欄位的對應關係(對應哪個資料表,哪個資料欄位、)
頁面中的每一個資料項目與哪個資料表的哪個資料表相對應?
頁面輸入的資料項值是否需要轉換成資料庫欄位的值? (例如將頁面中使用者輸入的是和否轉換成資料庫欄位1和0)
後台儲存資料時,請依照下列的步驟處理:
若資料校驗不正確,則提示出哪些資料項格式不正確,需要如何填入為正確的格式。
若已儲存失敗,則將失敗的原因提示給用戶,以便於用戶修改之後再次儲存。
若已儲存成功,則將成功的操作結果回饋給使用者。
若儲存異常,則提示使用者儲存操作出現異常,請重試。
若頁面的VO資料只對應一張資料表,則直接儲存到一張資料表即可。
若頁面的VO資料需要儲存到資料庫中的多張資料表時,需要採用交易管理機制控制資料保存作業的完整性,防止出現一部分錶保存成功;一部分保存失敗的情況。
若已經存在重複的記錄,則將重複的資訊回饋給使用者
若沒有重複的記錄,則執行以下的儲存步驟。
首先,需要接收頁面輸入的資料項,然後校驗資料項的合法性和有效性(類型、長度),並將
然後,結合資料的唯一性規則,判定是否已存在重複的資料記錄;
接著,實現頁面VO資料項與持久化物件PO的轉換:將使用者在頁面上輸入的VO資料項轉換成資料庫實體對象,並呼叫對應的主鍵產生規則,產生資料庫實體物件的主鍵欄位和其他與業務無關,但是需要儲存到資料庫中的欄位值;執行如下的儲存操作:
最後,將儲存作業的處理結果回饋給用戶:
刪除功能
刪除功能主要是將使用者選擇的資料從資料庫中刪除,實現在頁面上看不到資料。
可以採用以下的方法分析與實作:
分析刪除的實作方式:
採用硬刪除(直接將資料從資料庫中刪除)或是軟刪除方式(透過標識位標識資料已刪除)
分層刪除的級聯資料:
頁面上操作刪除的數據,是否有記錄刪除的情況:刪除一張資料表的一條數據,同時將另外一張資料表中與該筆記錄相關的資料記錄同時刪除掉。
分析刪除的操作方式:
依據資料記錄的哪個資料項進行刪除
支援一次只能刪除一筆資料
支援一次可以刪除多個資料
刪除操作的實作方法:
後台取得需要刪除的資料記錄的主鍵值,執行刪除操作;若有級聯刪除的情況,則需要在刪除目前表的資料記錄之後,同時刪除相關資料表中與該筆記錄相關的資料記錄,確保資料庫中不出現無效的冗餘資料。
批次刪除的情況,若其中一筆資料刪除錯誤;則將該筆記錄寫入提示訊息中,繼續執行後續資料記錄的刪除;
將刪除操作的處理結果回饋給操作使用者:
若刪除失敗,則回饋給刪除失敗的原因;
若刪除異常,則回饋異常的原因,提示使用者重試。
若刪除成功,則回饋操作成功的提示訊息給使用者;
在查看資料時,將資料記錄的主鍵隱藏顯示到頁面上,
在選擇資料時,將選擇資料對應的主鍵儲存起來
使用者點選刪除按鈕時,首先提示使用者是否確認刪除,若使用者選擇確認刪除,則執行如下的處理步驟:
在刪除成功之後,需要重新刷新頁面上的顯示數據,將刪除的結果(刪除成功的數據不在顯示在頁面上)展示給用戶。
修改功能
修改功能主要是將資料庫中已有的資料項目重新編輯,並將修改後的資料儲存到資料庫中。
查詢功能
綜述所述,Web層的開發方法如下:
編寫頁面VO:分析Web顯示層需要提交哪些資料項目、需要傳回哪些結果數據項;將請求資料項和結果資料項統一封裝到頁面VO。在編碼實作時,頁面VO類別是普通的Bean類,定義資料項並提供set和get方法即可。
編寫控制層Action:定義頁面VO對象;使用頁面VO對象接收Web顯示層提交的請求資料;並將VO提交的請求資料轉換成資料傳輸對象,傳輸給Service層使用;接收服務層傳回的處理結果;將處理結果傳回的資料傳輸物件轉換成VO的結果資料項。
編寫Action設定檔:
建立顯示層請求與控制層之間的請求對應關係:透過在Action的設定檔中,設定Action資訊建立頁面請求和Action之間的對應關係。
編寫顯示層頁面:
使用頁面VO接收使用者的請求資料:將頁面中的表單名稱設定為與頁面VO的屬性名稱相同,保證頁面VO可以接收到請求數據。
設定請求對應的Action位址:針對提交請求的頁面按鈕,將請求的位址設定為Action位址,確保可以將請求提交到對應的。
接收回傳的處理結果:接收請求傳回的處理結果,依據處理結果進行對應的處理。
3. 總結
本文在分析Web顯示層與Web控制層主要功能的基礎上,對兩者之間的資料互動進行深入分析,並以資料互動為核心提出了Web層的開發方法,同時對Web層開發的注意事項進行總結,對開發Web層功能有較好的借鏡與指導。
以上是如何有效實現應用mysql的增刪改查功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!