Tracer:基於Spring Boot、OAuth2.0、Vue分離的快速開發平臺

Tracer:基於Spring Boot、OAuth2。0開發基於Vue前後分離的開發平臺,支援帳號、SSO登入方式

Tracer:基於Spring Boot、OAuth2.0、Vue分離的快速開發平臺

登陸頁

專案簡介

Tracer,專案名稱取自暴雪旗下游戲《守望先鋒》中的角色獵空,另外一層意思為:描圖者,我們希望它能夠成為我們在開發專案的過程中成為我們手中的畫筆,基於Tracer使用者可以更快、更可靠、易讀、更完善的開發獨立專案

其次,我們也想透過Tracer來檢驗我們開發小組的技術。

主要定位於後臺管理系統學習交流,已內建後臺管理系統的基礎功能和高效的程式碼生成工具, 包括:系統許可權元件、資料許可權元件、資料字典元件、核心工具元件、檢視操作元件、工作流元件、程式碼生成等。 前端介面風格採用了VUE作為動靜分離的基礎。 採用分層設計、雙重驗證、提交資料安全編碼、密碼加密、訪問驗證、資料許可權驗證。使用Maven做專案管理,提高專案的易開發性、擴充套件性。

在Tracer中包含:檔案處理,音訊處理,即時通訊,流程處理,硬體處理,API管控。以及後續逐漸完善的spring cloud 微服務元件

專案技術

Tracer,使用Spring boot、mybatis、mybatis plus、Spring security、spring security oauth2、Redis、Jwttoken、vue、avue等,後續隨著專案的不斷髮展,會擴充套件以及應用更多。

技術選型

● 核心框架:Spring boot + Spring Framework

● 安全框架:Spring security

● 任務排程:Quartz

● 持久層框架:MyBatis + MyBatis-Plus

● 資料庫連線池:Alibaba Druid

● 快取框架:Caffeine+Redis

● 會話管理:Spring-Session

● 日誌管理:SLF4J、Log4j2

● 前端框架:vue+avue+element

專案功能&&特性

註冊登入:賬號密碼模式、簡訊驗證碼模式、社交賬號模式、口令模式

單點登入:基於Srping security oAuth 提供單點登入介面,對外開放,方便其他系統登入

使用者管理:系統中主要操作者管理,可以增刪改查。

機構管理:配置系統組織機構,樹結構展現,可隨意調整上下級。

選單管理:配置系統選單,操作許可權,按鈕許可權標識等。

角色管理:角色選單許可權分配、設定角色按機構進行資料範圍許可權劃分。

字典管理:對系統中經常使用的一些較為固定的資料進行維護,如:男女、是否等。

操作日誌:系統正常操作日誌記錄和查詢;系統異常資訊日誌記錄和查詢。

資料許可權: 使用mybatis Plus對原查詢做增強,業務程式碼不用控制,即可實現。

訊息中心:簡訊、郵件

程式碼生成:前後端程式碼生成,強大的程式碼生成元件

前後端分離:解放前端,專注與前端開發

採用前後端分離的模式,前端單獨採用基於Vue開發的Avuex,主要技術為vue,elment。

對基礎元件做了封裝,採用Maven方式引入,減少工程臃腫

封裝了secure模組,採用JWT做token認證,已經繼承redis等細顆粒控制

分包明確,使包和包之間的分工明確

開發工具

- MySql: 資料庫- t-io: 開發伺服器- Tomcat: 應用伺服器- SVN|Git: 版本管理- Nginx: 反向代理伺服器- Varnish: HTTP加速器- IntelliJ IDEA: 開發IDE- PowerDesigner: 建模工具- Navicat for MySQL: 資料庫客戶端

模組

tracer├── tracer-starter-common —— 系統公共模組 ├── tracer-starter-auth —— 授權服務提供├── tracer-starter-cache —— 系統快取模組├── tracer-starter-admin —— 業務後臺系統├── tracer-starter-redis —— redis管理元件├── tracer-starter-file —— 檔案管理元件 ├── tracer-starter-job —— 任務管理元件 ├── tracer-starter-socket —— 通訊元件

安全考慮

開發語言:系統採用Java 語言開發,具有卓越的通用性、高效性、平臺移植性和安全性。

分層設計:(資料庫層,資料訪問層,業務邏輯層,展示層)層次清楚,低耦合,各層必須透過接口才能接入並進行引數校驗(如:在展示層不可直接操作資料庫),保證資料操作的安全。

雙重驗證:使用者表單提交雙驗證:包括伺服器端驗證及客戶端驗證,防止使用者透過瀏覽器惡意修改(如不可寫文字域、隱藏變數篡改、上傳非法檔案等),跳過客戶端驗證操作資料庫。

安全編碼:使用者表單提交所有資料,在伺服器端都進行安全編碼,防止使用者提交非法指令碼及SQL注入獲取敏感資料等,確保資料安全。

密碼加密:登入使用者密碼進行SHA1雜湊加密,此加密方法是不可逆的。保證密文洩露後的安全問題。

強制訪問:系統對所有管理端連結都進行使用者身份許可權驗證,防止使用者直接填寫url進行訪問。

執行一覽

Tracer:基於Spring Boot、OAuth2.0、Vue分離的快速開發平臺

首頁

Tracer:基於Spring Boot、OAuth2.0、Vue分離的快速開發平臺

功能頁

Tracer:基於Spring Boot、OAuth2.0、Vue分離的快速開發平臺

功能頁

碼雲地址

https://gitee。com/meichangsu/Tracer