# programming-navigator-admin-public
**Repository Path**: make-it-easy/programming-navigator-admin-public
## Basic Information
- **Project Name**: programming-navigator-admin-public
- **Description**: 这是一个仿照编程导航后端开发部分功能的管理系统
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-08-09
- **Last Updated**: 2026-08-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Programming-Navigator-Admin
## 项目描述
编程导航后台管理(Programming Navigator Admin, PNA)是一种用来管理和控制编程社区的软件系统,帮助工作人员高效管理编程社区内用户、文章及评论。PNA 可以追踪和记录文章以及评论的发布情况,并对评论数进行实时可视化分析。
前端地址:[慕易/programming-navigator-admin-frontend](https://gitee.com/make-it-easy/programming-navigator-admin-frontend)
项目演示链接:[pna.vrmmo.online](https://pna.vrmmo.online)
username:pna,password:123456
## 软件架构
**开发环境**:JDK8、Mysql5.7、Redis6.2.18、Node16.20.2
**项目架构**:Maven3.6.3、SpingBoot、Vue3
## 项目实现
1. 登录模块:验证码,管理员注册/登录/退出,管理员头像云存储,管理员信息修改。
2. 用户模块:新增用户,用户的启动和禁用,查询和修改用户角色,重置用户密码。
3. 文章/评论模块:新增和修改文章/评论,设置文章/评论状态,评论可视化分析。
## 技术要点
1. 基于**双令牌刷新策略,使用 JWT 生成 token**,实现登录鉴权,并使用 **Redis 存储 token**。
2. 使用 **Redis 分布式缓存**存取文章/评论id。
3. 使用 RBAC 进行**权限菜单树**的开发,实现了用户和权限逻辑分离。
4. 进行验证码的开发,使用 **SHA256 对密码进行盐值加密**。
5. 使用**动态数据源**对数据进行分库存储,使用 Interceptor 进行**登录拦截**。
6. 使用 AliyunOSS 存取管理员头像,使用 PageHelper 插件实现**分页查询**。
7. 使用 **AOP 进行统一日志和声明式事务管理**。
8. 设置 GlobalExceptionHandler 处理异常,并使用 **Knife4j 文档**进行后端接口测试。
## ER图
