# common-framework
**Repository Path**: txn-dom/common-framework
## Basic Information
- **Project Name**: common-framework
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-05-05
- **Last Updated**: 2025-05-05
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Common Framework
## 项目简介
Common Framework 是一个基于 Spring Boot 的通用框架,提供了认证授权、缓存、分布式服务等基础功能。该框架采用模块化设计,支持按需引入,可以快速构建企业级应用。
## 功能特性
- 认证授权
- OAuth2 支持
- JWT 集成
- 权限控制
- SSO 支持
- 分布式服务
- 服务注册发现
- 服务调用
- 服务治理
- 配置管理
- 缓存支持
- 本地缓存
- 分布式缓存
- 缓存降级
- 缓存监控
- 其他功能
- 统一响应
- 统一异常
- 参数验证
- 日志处理
## 技术架构
- Spring Boot
- Spring Security
- Apache Dubbo
- Spring Data Redis
- Nacos
- JWT
## 模块说明
- common-auth:认证授权模块
- common-core:核心功能模块
- common-dubbo:分布式服务模块
- common-redis:缓存服务模块
- common-web:Web 功能模块
## 快速开始
### 1. 环境要求
- JDK 17+
- Maven 3.6+
- Redis 6.0+
- Nacos 2.0+
### 2. 项目构建
```bash
# 克隆项目
git clone https://github.com/your-username/common-framework.git
# 进入项目目录
cd common-framework
# 编译打包
mvn clean package
```
### 3. 配置说明
```yaml
spring:
application:
name: your-application
profiles:
active: dev
dubbo:
application:
name: ${spring.application.name}
registry:
address: nacos://localhost:8848
protocol:
name: dubbo
port: -1
redis:
host: localhost
port: 6379
database: 0
```
### 4. 使用示例
#### 添加依赖
```xml
com.ciccwm
common-auth
${project.version}
com.ciccwm
common-dubbo
${project.version}
com.ciccwm
common-redis
${project.version}
```
#### 配置认证
```java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.oauth2ResourceServer()
.jwt()
.and()
.authorizeRequests()
.anyRequest().authenticated();
}
}
```
#### 使用缓存
```java
@Autowired
private RedisDegradeService redisService;
public void example() {
// 存储数据
redisService.storeAuthCode("code", authCodeData);
// 获取数据
AuthCodeData data = redisService.getAuthCode("code");
}
```
## 最佳实践
### 1. 项目结构
- 模块化设计
- 依赖管理
- 配置管理
- 版本控制
### 2. 开发规范
- 代码规范
- 注释规范
- 文档规范
- 测试规范
### 3. 部署运维
- 环境配置
- 服务部署
- 监控告警
- 日志管理
## 注意事项
1. 版本兼容
- 注意依赖版本
- 注意接口兼容
- 注意配置兼容
- 注意升级策略
2. 性能优化
- 合理使用缓存
- 控制资源使用
- 优化服务调用
- 监控系统性能
3. 安全防护
- 认证授权
- 数据加密
- 访问控制
- 安全审计
## 版本历史
- v1.0.0: 初始版本
- 基础功能模块
- 认证授权支持
- 分布式服务支持
- 缓存服务支持
## 贡献指南
1. Fork 项目
2. 创建特性分支
3. 提交变更
4. 发起 Pull Request
## 许可证
Apache License 2.0