1. 開發目的
實現圖書的智能化、信息化和簡單化;實現圖書信息的增加、刪除、修改、查找、借閱、還書、收藏的顯示操作及實時數據庫的提交和更改和對普通用戶的增、刪、改、查;提高圖書管理員工作信息報送及反饋的工作效率,減輕管理員的勞動負擔;提高信息的及時性和匯總統計信息的準確性。
2,技術分析
后端技術
技術 | 說明 | 官網 |
---|---|---|
SpringBoot | Web應用開發框架 | https://spring.io/projects/spring-boot |
SpringSecurity | 認證和授權框架 | https://spring.io/projects/spring-security |
MyBatis | ORM框架 | http://www.mybatis.org/mybatis-3/zh/index.html |
MyBatisGenerator | 數據層代碼生成器 | http://www.mybatis.org/generator/index.html |
Druid | 數據庫連接池 | https://github.com/alibaba/druid |
JWT | JWT登錄支持 | https://github.com/jwtk/jjwt |
Lombok | Java語言增強庫 | https://github.com/rzwitserloot/lombok |
PageHelper | MyBatis物理分頁插件 | http://git.oschina.net/free/Mybatis_PageHelper |
Swagger-UI | API文檔生成工具 | https://github.com/swagger-api/swagger-ui |
前端技術
技術 | 說明 | 官網 |
---|---|---|
Vue | 前端框架 | https://vuejs.org/ |
Vue-router | 路由框架 | https://router.vuejs.org/ |
Vuex | 全局狀態管理框架 | https://vuex.vuejs.org/ |
Element | 前端UI框架 | https://element.eleme.io |
Axios | 前端HTTP框架 | https://github.com/axios/axios |
v-charts | 基于Echarts的圖表框架 | 📣 有源碼 獲取源碼 |
3. 項目結構
3.1 數據庫結構
表名 | 作用 |
---|---|
book | 圖書 |
user | 用戶 |
lendrecord | 借閱記錄 |
classinfo | 分類信息 |
collectrecord | 收藏信息 |
3.2 項目結構
前后端交互全部采用JSON數據交互
4. 功能介紹
主要功能:驗證碼,模糊查詢,分頁查詢,多表聯合查詢,文件上傳,Excel文件導出,管理員對圖書,用戶進行增刪改查,普通用戶進行收藏,借閱及取消收藏,借閱,攔截器,日志集成,密碼均采用了MD5加密,圖形報表.
4.1 登錄界面
實現了驗證碼和前端初步判定用戶名和密碼是否合法
4.2 注冊頁面
實現了對用戶信息,手機號,密碼的初步檢驗
4.3 普通用戶操作界面
普通用戶可進行圖書管理,借還管理,收藏管理和密碼修改,默認首頁是圖書的借閱排行
4.4 圖書管理
4.4.1 圖書列表
普通用戶可模糊查詢圖書,新建圖書,導出圖書,對圖書進行借閱,收藏
- 模糊查詢圖書
- 新建圖書
- 導出
- 借閱
- 收藏
被收藏后的圖書,會收藏失敗
4.4.2 分類信息
支持分類信息模糊查詢,導出和分頁查詢
4.4.3 借閱數量
實現數據可視化
4.5 借還管理
支持圖書模糊查詢,導出借還記錄,圖書歸還,分頁查詢,用戶只能看見自己的借還記錄
4.6 收藏管理
支持圖書模糊查詢,導出收藏記錄,圖書取消收藏,分頁查詢,用戶只能看見自己的收藏記錄
4.7 其他
4.7.1 地圖
引用百度地圖api
4.7.2 讀者分布
實現可數據可視化
4.8 修改密碼
實現密碼加密存儲,前端初步驗證
4.9 管理員界面
讀者分布
4.10 讀者檔案
支持讀者名稱模糊查詢,分頁查詢,導出讀者列表,增加,編輯和刪除讀者
- 增加讀者
- 編輯讀者
支持數據回顯
- 刪除讀者
4.11 圖書管理
相對普通用戶來說,管理員頁面增加了對圖書的編輯和刪除
- 編輯圖書
支持數據回顯
4.12 借還管理
實現了對不同用戶借書情況的查詢,刪除和歸還,支持借還記錄導出,分頁查詢
4.13 收藏管理
支持查看不同用戶的圖書收藏情況,支持收藏記錄導出
4.14 攔截器功能
用戶未登錄就訪問頁面時,會進行攔截并跳轉到登錄頁面