一、開源項目簡介
基于SpringBoot,后端核心技術(shù)采用Sqltoy操作數(shù)據(jù)庫以及Sa-Token鑒權(quán),前端使用Vue3+TS+Element-plus。是一款前后端分離、開箱即用的后臺權(quán)限管理系統(tǒng)。
二、開源協(xié)議
使用MIT開源協(xié)議
三、界面展示
? 圖片演示
四、功能概述
后臺首頁
系統(tǒng)管理
用戶管理
角色管理
權(quán)限管理
菜單管理
字典管理
日志管理
系統(tǒng)工具
404頁面
版本v1.0.2
1. 修復已知BUG & 優(yōu)化UI.2. 新增字典表維護.3. 補充權(quán)限緩存以及角色鑒權(quán).4. 后臺系統(tǒng)新增實體類代碼生成器.5. 增加操作日志功能.快馬加鞭建設(shè)中...
版本v1.0.1正式完成
基于SpringBoot,后端核心技術(shù)采用Sqltoy操作數(shù)據(jù)庫以及Sa-Token鑒權(quán),前端使用Vue3+TS+Element-plus。是一款前后端分離、開箱即用的后臺權(quán)限管理系統(tǒng)。
五、技術(shù)選型
軟件架構(gòu)
與其它優(yōu)秀Admin的不同之處
v1.0.1
public interface IUserService {
// 注釋已省略......
boolean add(UserAddParam param) throws BusinessException;
boolean deleteBatch(List<String> idList) throws BusinessException;
boolean update(UserUpdateParam param) throws BusinessException;
Page<UserVO> listByPage(Page<UserVO> param) throws BusinessException;
boolean delete(String id) throws BusinessException;
}
v1.0.2
public interface IUserService extends IBaseService<Page<UserVO>, UserPageParam, UserAddParam, UserUpdateParam> {
}
mybatits
public class UserServiceImpl{
@Autowired
private UserMapper userMapper;
public List<User> getAll() {
return userMapper.getAll();
}
}
// + 這里還得加一個mapper
public class UserMapper{
public List<User> getAll();
}
// mapper的xml文件......
sqltoy
public class UserServiceImpl{
@Autowired
private SqlToyLazyDao sqlToyLazyDao;
public List<User> getAll() {
return sqlToyLazyDao.findBySql("getAll");
}
}
// - 這里不用再寫一個mapper.java文件
// mapper的xml文件......
?? 啟動說明
步驟
運行數(shù)據(jù)庫腳本
啟動本地Redis并運行后端服務(wù)
安裝前端依賴并運行前端項目
后端
application.yml配置文件位置:src/main/resources/application.yml
數(shù)據(jù)庫腳本:/doc/db/DB_SRA_V1.sql
Main入口主類:sra-bootstrap/src/main/java/com/jwss/bootstrap/SraApplicationBoot.java
$ cd sra-ui #切換到前端目錄
$ npm install || yarn #安裝依賴
$ npm run serve || yarn run serve #開發(fā)環(huán)境
$ npm run build || yarn run build #生產(chǎn)環(huán)境
開發(fā)規(guī)范
項目結(jié)構(gòu)
├─logs ------------------------日志文件
├─doc -------------------------文檔
│ └─db -----------------------數(shù)據(jù)庫腳本
├─sra-bootstrap ---------------啟動模塊
├─sra-common ------------------常用模塊
├─sra-config ------------------配置模塊
├─sra-framework ---------------框架模塊
├─sra-system ------------------系統(tǒng)模塊
└─sra-ui ----------------------前端項目
核心技術(shù)棧
后端
SpringBoot :Spring Boot 可以輕松創(chuàng)建可以“直接運行”的獨立的、生產(chǎn)級的基于 Spring 的應用程序。
Sqltoy :java真正最強大的ORM框架,支持市場上流行數(shù)據(jù)庫。
Satoken :一個輕量級 Java 權(quán)限認證框架,讓鑒權(quán)變得簡單、優(yōu)雅!
Hutool :小而全的Java工具類庫,使Java擁有函數(shù)式語言般的優(yōu)雅,讓Java語言也可以“甜甜的”。
前端
Vue3開發(fā)文檔 :Vue 被設(shè)計為可以自底向上逐層應用。Vue 的核心庫只關(guān)注視圖層,不僅易于上手,還便于與第三方庫或既有項目整合。
Element Plus :基于 Vue 3,面向設(shè)計師和開發(fā)者的組件庫,簡潔、美觀、穩(wěn)定、易用。
Apache ECharts :一個基于 JavaScript 的開源可視化圖表庫,功能非常強大。
? 軟件版本要求
MySQL:8.0及以上
JDK:jdk8及以上
Nodejs:14.0及以上
六、源碼地址
訪問一飛開源:https://code./