Files
jsowell-charger-web/jsowell-framework/CLAUDE.md
2026-02-03 14:20:30 +08:00

3.5 KiB

根目录 > jsowell-framework

jsowell-framework 模块

核心框架模块,提供安全、权限、登录等基础服务。


变更记录 (Changelog)

2026-02-03 11:32:30

  • 初始化模块文档
  • 识别 45 个核心类

模块职责

  • 安全框架: Spring Security 配置
  • JWT 认证: Token 生成与验证
  • 权限控制: 数据权限、接口权限
  • 数据源管理: 动态数据源、Druid 配置
  • AOP 切面: 日志、限流、数据权限
  • 异常处理: 全局异常处理

入口与启动

本模块为基础框架模块,无独立启动入口。


对外接口

核心服务

服务 说明
TokenService JWT Token 服务
SysLoginService 登录服务
SysPasswordService 密码服务
PermissionService 权限服务
UserDetailsServiceImpl 用户详情服务

配置类

配置类 说明
SecurityConfig Spring Security 配置
RedisConfig Redis 配置
DruidConfig Druid 数据源配置
MyBatisConfig MyBatis 配置
ThreadPoolConfig 线程池配置

AOP 切面

切面 说明
LogAspect 操作日志记录
DataScopeAspect 数据权限过滤
DataSourceAspect 动态数据源切换
RateLimiterAspect 接口限流
CostTimeAspect 耗时统计

关键依赖与配置

Maven 依赖

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-aop</artifactId>
    </dependency>
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid-spring-boot-starter</artifactId>
    </dependency>
    <dependency>
        <groupId>com.jsowell</groupId>
        <artifactId>jsowell-system</artifactId>
    </dependency>
</dependencies>

常见问题 (FAQ)

Q: Token 过期如何处理?

Token 有效期配置在 application.ymltoken.expireTime,默认 1440 分钟

Q: 如何添加接口白名单?

SecurityConfig 中配置 permitAllUrls 或使用 @Anonymous 注解

Q: 数据权限如何配置?

使用 @DataScope 注解,配置 deptAliasuserAlias


相关文件清单

jsowell-framework/
├── src/main/java/com/jsowell/framework/
│   ├── aspectj/                   # AOP 切面
│   │   ├── LogAspect.java
│   │   ├── DataScopeAspect.java
│   │   ├── DataSourceAspect.java
│   │   ├── RateLimiterAspect.java
│   │   └── CostTimeAspect.java
│   ├── async/                     # 异步处理
│   ├── config/                    # 配置类
│   │   ├── SecurityConfig.java
│   │   ├── RedisConfig.java
│   │   ├── DruidConfig.java
│   │   ├── MyBatisConfig.java
│   │   └── ThreadPoolConfig.java
│   ├── datasource/                # 动态数据源
│   ├── interceptor/               # 拦截器
│   ├── manager/                   # 管理器
│   ├── security/                  # 安全相关
│   │   ├── filter/
│   │   └── handle/
│   └── web/
│       ├── domain/               # 服务器信息
│       ├── exception/            # 异常处理
│       └── service/              # 核心服务
└── pom.xml