預算實習日記
-3-1
在昨天的基礎上,我們進行了再次討論,數據庫的設計最終確定下來。接下來就開始了編碼,建立整個系統的框架由我負責,按照開發的流程,首先根據數據表建立實體層,也就是javabean,然后寫數據庫連接,數據訪問層,業務邏輯層,控制層,整個框架搭建好之后,有利用老師講的junit,寫了測試程序,對所寫的程序進行初步測試,數據庫連接的測試順利通過。數據庫連通之后,下一步工作就是用戶的分角色登陸,事先在數據庫中插入了一些用戶信息,將角色分為五類,然后在數據訪問層建立一個dao類,創建函數用于從數據庫中讀取用戶的角色id,然后在業務邏輯層判斷dao層函數返回的值是否為空,如果不為空則在控制層的servlet類中就可以進行判斷分角色登陸;若dao層函數返回的值為空,則說明該用戶名與密碼有誤,當用戶點擊登陸按鈕時將轉到錯誤提示的頁面。當這些全部完成之后,我們開始進行測試,但測試全未能如愿以償。調試、檢查了很久全未能發現錯在哪里。今天沒能順利完成計劃好的任務,深受打擊啊,不過沒關系,遇到問題,解決問題,也許會學到跟多知識。
-3-2
上午接著做昨天未能完成的任務,調試了兩個多小時還是未能所獲,只有請教老師了,看著老師在debug模式下很快就找了出錯的地方,原來在dao層寫sql語句時后面多了一個逗號,看來編程也是需要非常的細心?偨Y了失敗的原因,記住教訓,一定不能再出現這樣的低級錯誤,而導致降低效率。這一步總算通過之后,我們開始著手不同角色所擁有的操作權限,比如普通員工只有報銷申請的權限(新增報銷單、刪除、修改、提交、查看等功能),部門經理不僅有報銷申請的權限,還有審核部門員工提交的報銷申請單和預算申請、部門項目管理等權限,每一種角色登陸到操作界面的功能按鈕不盡相同,所以當普通角色登陸后,審核、預算等按鈕必須隱藏或者不可用。但是我們之前的界面里的按鈕實現隱藏與子菜單都很難實現,所以不得不考慮改變策略。之后經過討論我們將整個頁面布局改變為框架模式,左邊顯示樹形菜單,top'frame顯示logo,mainframe顯示主顯示頁面,bottomframe顯示版權信息以及系統時間。這樣我們貌似又回到了原型設計,,還是沒有項目經驗,最初就沒有考慮清除。
-3-3
涉及到的jsp界面還比較多,每一個頁面都是用html一句一句寫出來,再加上css樣式,所以半天的時間也沒有完成,今天上午繼續完成。當所有的界面完成之后,開始了第一個功能模塊的編碼。當用戶登陸到自己的主頁時,顯示的都是歡迎界面,當用戶點擊報銷單管理時,必須根據用戶編號動態的從數據庫中提取其所有的報銷單信息,然后顯示在展示界面上,用戶的編號的、是在用戶登陸時將用戶編號存儲在session中,默認該用戶登陸系統30分鐘內沒有操作的話,自動讓該用戶注銷登陸。當點擊報銷單管理按鈕時,將用戶請求轉到servlet類中進行后臺處理,讀取成功后,將這些信息傳到用戶的界面上,第一個原子功能實現后,我們更加有信心來完成其他模塊的編碼。原來一個真正的系統也應該是這樣的原子操作組合而成的,從這一步的成功點燃了我們對編碼的興趣,不再畏懼和逃避。