【Java專案(2)】基於Javaee的通訊錄系統

一碼柒分發表於2020-12-01

基於Javaee的通訊錄系統

為什麼會有這個專案?

要求

還不是因為老師的作業!!!!!!!!

系統介紹:

  1. 功能描述

通訊錄模組主要用於允許使用者按類別管理自己的通訊錄資訊。根據該功能可以將通訊錄模組分為使用者操作和聯絡人管理兩個部分,具體的功能結構圖如下圖所示:

在這裡插入圖片描述

  1. 系統流程

使用者訪問登入頁面,若該使用者沒註冊,則先註冊,否則輸入使用者名稱和密碼登入系統主頁;在進入系統主頁後,使用者可以對自己的聯絡人資訊進行管理。

  1. 關鍵技術

    核心技術:JSP+Servlet+JavaBean,其中,Servlet充當控制器,用於實現業務邏輯;JavaBean充當模型層;JSP充當表示層,即檢視,用於獲取或顯示資料。具體要求如下:

    1. 資料庫至少包括三張表:聯絡人分類表、聯絡人表及使用者表;
    2. JSP頁面:
      a. 資料顯示結合使用EL表示式和JSTL;
      b. 所有JSP頁面使用JSP動作標籤將頁面header.html及footer.html部分包含進來;
    3. JavaBean:
      a. 定義三個JavaBean,分別使用者封裝聯絡人分類資訊、聯絡人資訊及使用者資訊;
      b. 定義三個DAO,分別實現系人分類資訊、聯絡人資訊及使用者資訊的增刪改查操作;
    4. Servlet:
      用於收集頁面資料,呼叫模型(JavaBean)進行資訊處理,選擇檢視(jsp)顯示結果
    5. 其他要求:
      a. 整個專案的頁面跳轉方式需使用到重定向和請求轉發;
      b. Session儲存登入使用者資訊,在主頁顯示;
      c. 解決頁面中文亂碼問題。

說明

這是一個使用了 H-ui 元件庫的一個頁面,後端使用JavaEE開發,訪問資料庫使用阿里的 Druid連線池,使用 ThreadLocal 進行統一的事務管理,對於 Servlet控制器,採用一個抽象基礎類,在每一次訪問的時候都將手動的攜帶一個 action訪問引數,使用 Java反射機制動態呼叫方法,提高程式碼複用率。 通訊錄系統開發嚴格遵循 MVC模式。

本系統截止 2020-11-30已經完成了註冊、登入、修改密碼、新增分組、新增聯絡人、聯絡人資訊管理、分組管理功能。

待完善功能: 郵箱註冊, 使用郵箱找回密碼, 搜尋功能, 名片生成, 使用者資訊的更多細節(性別,年齡…), 微信掃碼登入, 個人收藏和黑名單

資料庫設計

使用者表 t_user

欄位型別主鍵是否為空說明
idint(11)truefalse自增的id值
namevarchar(255)falsefalse使用者名稱稱
passwordvarchar(255)falsefalse使用者密碼
emailvarchar(255)falsetrue使用者郵箱
sexvarchar(1)falsetrue使用者性別

聯絡人表 t_linkman

欄位型別主鍵是否為空說明
idint(11)truefalse自增id值
remarkvarchar(255)falsetrue描述
is_blacktinyint(1)falsefalse是否加入黑名單
is_collecttinyint(1)falsefalse是否收藏
cat_namevarchar(30)falsefalse該聯絡人類別名稱
user_idint(11)falsefalse改聯絡人屬於哪個使用者
namevarchar(20)falsefalse該聯絡人的名稱

號碼錶 t_phone

欄位型別主鍵是否為空說明
idint(11)truefalse自增id主鍵
phonevarchar(20)falsefalse電話號碼
user_idvarchar(255)faslefalse該號碼屬於哪一個使用者

分類表 t_linkman_cat

欄位型別主鍵是否為空說明
idint(11)truefalse自增主鍵
user_idint(11)falsefalse使用者id
cat_namevarchar(30)falsefalse該分類的名稱

系統執行介面

登入註冊功能

註冊頁

image-20201130225854058

image-20201130230702503

image-20201130230714014

登入頁

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片儲存下來直接上傳(img-lh7bWuCq-1606782966157)(https://i.loli.net/2020/11/30/HbrC7y6DMO5x31j.png)]

  • 密碼錯誤頁面

登入成功後臺

登入成功歡迎頁面

image-20201201083205095

左邊導航欄中的管理通訊錄

image-20201201080114367

修改使用者密碼

image-20201201080212754

  • 修改密碼中有原密碼的驗證以及兩次重複密碼的驗證,有一處錯誤就不會提交表單

image-20201201080734977

新增聯絡人

image-20201201080843775

  • 一個聯絡人可以擁有多個手機號碼,點選新增按鈕,即可新增手機號碼。

分組管理

  • 對於分組管理,在輸入框裡面輸入內容之後,當文字框失去焦點,或者點選空格或回車,都會將輸入的文字內容變成分組,

image-20201201080325729

image-20201201081055951

  • 點選提交會提交到後臺,再次進入介面,可以發現,左邊的導航欄已經發生了變化

image-20201201081213162

  • 點選分組的名稱,會彈出提示框,提示是否要刪除分組,點選確定,再提交更改,即可刪除該分組。

image-20201201081442931

  • 若該分組含有聯絡人,那麼會自動的將裡面的所有聯絡人自動的歸到預設分組裡面。

全部聯絡人

  • 不論聯絡人在哪個分組,都會在這個分組裡面。

image-20201201082627793

聯絡人詳細資訊

  • 點選聯絡人名稱,在右邊內容裡會顯示該聯絡人的詳細資訊。

image-20201201081803449

  • 右邊是一個表單,實時可以對聯絡人進行更改,修改完資訊之後,點選更新資訊,即可在資料庫更新。

image-20201201081847030

  • 在新增號碼這一欄裡面,如果新增的號碼輸入框沒有資料,那麼就不會有一個新的框出現。若將一個號碼裡面的值全部清楚,並失去焦點,那麼這個文字框會自動的消失。

image-20201201081905202

登出功能

  • 點選登出之後,會跳轉到登入介面

image-20201201082458044

回到歡迎頁面

image-20201201082544482

相關文章