后台管理系統-項目介紹


1. 項目介紹

本系統是一個后台管理系統

前端源碼 : https://gitee.com/leo-heng/myproject-front

后端源碼 : https://gitee.com/leo-heng/myproject-back

知識整理 : https://www.cnblogs.com/Leo-Heng/p/14989418.html

1.1. 后端目錄結構

myproject
 ├── pom.xml
 └── src
     └── main
         ├── java
         │   └── com
         │       └── myproject
         │           └── cn
         │               ├── common
         │               │   ├── domin //登錄驗證
         │               │   │   └── LoginAdmin.java
         │               │   ├── exception //異常處理
         │               │   │   ├── ApiException.java
         │               │   │   ├── FormValidException.java
         │               │   │   └── GlobalExceptionHandler.java
         │               │   ├── http //返回信息
         │               │   │   ├── AxiosResult.java
         │               │   │   └── AxiosStatus.java
         │               │   ├── page //分頁查詢
         │               │   │   └── PageBean.java
         │               │   ├── perm //權限校驗
         │               │   │   ├── HasPerm.java
         │               │   │   └── PermAop.java
         │               │   ├── props //相關屬性
         │               │   │   └── UploadProperties.java
         │               │   └── valid //分組校驗
         │               │       ├── anno
         │               │       │   ├── InList.java
         │               │       │   └── InListHandler.java
         │               │       └── group
         │               │           ├── AddGroup.java
         │               │           ├── BtnGroup.java
         │               │           ├── DirectoryGrop.java
         │               │           ├── MenuGroup.java
         │               │           └── UpdateGroup.java
         │               ├── components //相關組件
         │               │   ├── CacheService.java //redis緩存
         │               │   ├── DemoScheduling.java //定時任務測試demo
         │               │   ├── EmailService.java //email發送
         │               │   └── TokenService.java //token生成解析
         │               ├── config //相關配置
         │               │   ├── CorsConfig.java //跨域請求配置
         │               │   ├── MyWebConfig.java //登錄攔截
         │               │   └── SwaggerConfig.java //swagger2文檔配置
         │               ├── constants //常量
         │               │   └── RedisKey.java //redis分組常量
         │               ├── controller //相關業務
         │               │   ├── AdminController.java
         │               │   ├── base
         │               │   │   └── BaseController.java
         │               │   ├── BrandController.java
         │               │   ├── CommonController.java
         │               │   ├── MenuController.java
         │               │   ├── RoleController.java
         │               │   └── ScheduleController.java
         │               ├── dto //返回前端的封裝數據
         │               │   ├── AdminDTO.java
         │               │   ├── base
         │               │   │   └── BaseDTO.java
         │               │   ├── BrandDTO.java
         │               │   ├── MenuDTO.java
         │               │   ├── RoleDTO.java
         │               │   └── ScheduleBeanDTO.java
         │               ├── entity //實體類
         │               │   ├── Admin.java
         │               │   ├── AdminRole.java
         │               │   ├── base
         │               │   │   └── BaseEntity.java
         │               │   ├── Brand.java
         │               │   ├── Menu.java
         │               │   ├── Role.java
         │               │   ├── RoleMenu.java
         │               │   └── ScheduleBean.java
         │               ├── interceptor //登錄攔截
         │               │   └── LoginInterceptor.java
         │               ├── mapper //mapper查詢
         │               │   ├── AdminMapper.java
         │               │   ├── AdminRoleMapper.java
         │               │   ├── base
         │               │   │   └── MyMapper.java
         │               │   ├── BrandMapper.java
         │               │   ├── MenuMapper.java
         │               │   ├── RoleMapper.java
         │               │   ├── RoleMenuMapper.java
         │               │   └── ScheduleMapper.java
         │               ├── MyApplication.java
         │               ├── query //查詢封裝
         │               │   ├── AdminQuery.java
         │               │   ├── base
         │               │   │   └── BaseQuery.java
         │               │   ├── BrandQuery.java
         │               │   ├── MenuQuery.java
         │               │   └── RoleQuery.java
         │               ├── service //service層
         │               │   ├── AdminService.java
         │               │   ├── base 
         │               │   │   ├── BaseService.java //所有service接口的父類
         │               │   │   └── impl
         │               │   │       └── BaseServiceImpl.java //所有serviceImpl的父類
         │               │   ├── BrandService.java
         │               │   ├── impl
         │               │   │   ├── AdminServiceImpl.java
         │               │   │   ├── BrandServiceImpl.java
         │               │   │   ├── MenuServiceImpl.java
         │               │   │   ├── RoleServiceImpl.java
         │               │   │   └── ScheduleServiceImpl.java
         │               │   ├── MenuService.java
         │               │   ├── RoleService.java
         │               │   └── ScheduleService.java
         │               ├── transfer //類型轉換 entity轉DTO
         │               │   ├── AdminTransfer.java
         │               │   ├── base
         │               │   │   └── BaseTransfer.java
         │               │   ├── BrandTransfer.java
         │               │   ├── MenuTransfer.java
         │               │   ├── RoleTransfer.java
         │               │   └── ScheduleBeanTransfer.java
         │               └── utils //工具類
         │                   ├── FormValidUtils.java //表單校驗
         │                   ├── JsonUtils.java //json轉換
         │                   ├── ReflectionUtils.java //反射工具
         │                   ├── TreeUtils.java //樹狀數據
         │                   └── UploadService.java //下載配置
         └── resources //配置文件
             ├── application.yml 
             └── templates //freemark模板引擎默認加載文檔
                 └── salary.ftl //工資郵件模板

1.2. 前端目錄結構

front-vue
 ├── babel.config.js
 ├── package-lock.json
 ├── package.json
 ├── public
 │   ├── favicon.ico
 │   └── index.html
 ├── README.md
 └── src
     ├── api
     │   ├── admin.js
     │   ├── brand.js
     │   ├── login.js
     │   ├── menu.js
     │   ├── role.js
     │   ├── schedule.js
     │   └── upload.js
     ├── App.vue
     ├── assets
     ├── ccccc.html
     ├── components
     │   └── huigeMenuItem.vue
     ├── main.js
     ├── router
     │   └── index.js
     ├── store
     │   └── index.js
     ├── utils
     │   ├── datachoose.js
     │   └── myaxios.js
     └── views
         ├── admin
         │   ├── index.js
         │   ├── index.scss
         │   └── index.vue
         ├── brand
         │   ├── index.js
         │   ├── index.scss
         │   └── index.vue
         ├── enter
         │   ├── index.js
         │   ├── index.scss
         │   └── index.vue
         ├── index
         │   └── index.vue
         ├── main
         │   └── index.vue
         ├── menu
         │   ├── index.js
         │   ├── index.scss
         │   └── index.vue
         ├── role
         │   ├── index.js
         │   ├── index.scss
         │   └── index.vue
         └── schedule
             ├── index.js
             ├── index.scss
             └── index.vue

2. 實現功能

所有功能相關知識點均在源碼中有總結

  • 驗證碼登錄
  • 動態菜單
  • 按鈕級別權限(動態按鈕)
  • 三表聯合增 刪 改 分頁條件查詢 批量刪除
  • Excel下載
  • 文件上傳
  • 登錄驗證
  • 手動控制定時任務

3. 使用技術介紹

所有技術相關知識點在源碼中均有總結

  • 后端
    • SpringBoot
    • Maven 版本管理
    • MyBatisPlus 數據庫管理
    • Redis 臨時數據存儲
    • web 3.x
    • tomcat 8.x
    • JDK1.8
    • validation 表單驗證
    • lombok
    • easyExcel 生成excel文檔
    • pageHelper 分頁查詢
    • swagger 自動生成文檔
    • security-crypto 密碼加密
    • oss 文件上傳
    • freemarker 模板引擎
    • easy-captcha 驗證碼
    • aop
    • jwt 返回前端數據
  • 前端
    • vue
    • element-ui
    • axios
    • normalize.css

4. 源碼地址

5. 所用到的知識點

文檔只記錄一些相對復雜的邏輯和知識點

6. 總結

基本上把需要用到的功能都實現了 , 就是前端有些簡陋


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM