柯曉鴻:031302613 葉藝潔:031302540
功能分析
- 需要實現的是上傳文件,再將數據庫數據顯示在頁面上
實現的思路
- 首先是確定使用struts2 框架開發,struts2 框架下引入common-fileupload.jar和common-io.jar進行文件的上傳,文件上傳后按照時間毫秒數進行重命名,避免上傳后出現文件重名的情況
- 上傳文件后對文件進行解析,使用的是java中的jxl.jar,解析完成上傳的文件開始連接mysql數據庫,建表,插入數據。
- 最后是頁面前端顯示,前端顯示使用bootstrop框架,在fileupload.java的action中末尾調用解析文件的java類文件,查詢數據庫數據,再利用request將查詢結果保存,在顯示頁面通過request方法得到結果,利用表格將結果顯示。
數據庫考量
- 由於考慮到一們課程可能由多個老師上課,如果一個excel文件建成一張表需要的主鍵較多,因此將表簡化成類似3NF模式的兩張表格,並添加課程編號、選課編號,完善表。
git 源碼鏈接
圖片
-
數據庫設計
-
git commit 日志
-
psp表格
項目照片
-
上傳
-
顯示
-
數據庫
小結
- 兩次結對作業中,印象比較深的是對需求分析這一塊的反復的討論和修改,一開始簡單的分析客戶的需求,之后在加上自己站在客戶的角度上對需求的理解,最后形成所有的需求文檔。只有在討論中才有更多的ideas出現。其次是項目編程,首先沒有和同學討論好項目編碼和使用的數據庫,剛開始我使用SQL server 2008,而隊友使用的是MySql,導致在項目整合的時候出現不可運行的情況,之后是數據庫編碼,出現中文不可插入的情況,一頓百度后才發現原因。暴露了缺少項目的開發經驗,在測試項目,優化代碼這一階段,真的是反反復復的運行和程序,發現bug,修改bug。顯示解決測試多次上傳重命名問題,怎樣的命名規范才是好的。而當項目可運行是時便開始優化代碼和結構,怎樣刪減代碼,調用函數比較方便,還要考慮到網頁刷新后是否需要重新連接數據庫等問題。