✨ 主要特性
1. 正则表达式包过滤
2. 环境条件配置
- 基于 Spring Boot 环境配置实现不同环境下的扫描策略
- 支持多环境部署场景,如开发、测试、生产环境
- 可根据环境变量或 profile 自动调整扫描行为
📁 详细变更
核心代码
- AutoScanProperties.java : 添加了正则表达式过滤相关属性
- AutoScanApplicationContextInitializer.java : 实现了正则表达式过滤逻辑和环境条件配置
测试用例
- EnvironmentScanTest.java : 测试基于环境的扫描配置
- RegexFilterTest.java : 测试正则表达式包过滤功能
- v130/AutoScanV130Application.java : v1.3.0 版本示例应用
- v130/AutoScanV130Test.java : v1.3.0 版本功能测试
配置和文档
- application-examples.yml : 添加了 v1.3.0 特性的配置示例
- CONFIGURATION_GUIDE.md : 更新了配置指南
- README.md : 更新版本信息和特性介绍
- pom.xml : 更新版本号为 1.3.0
- 中英文文档 : 全面更新了架构、使用案例、最佳实践等文档
🚀 使用方法
正则表达式过滤示例
auto-scan:
base-packages:
- org.example
exclude-packages-regex:
- org\.example\.test\..* # 排除所有测试包
- org\.example\.example\..* # 排除所有示例包
- .*\.temp\..* # 排除包含 "temp" 的包
include-packages-regex:
- org\.example\.boot\..* # 包含 boot 包
- org\.example\.business\..* # 包含业务包
环境条件配置示例
# application-dev.yml
auto-scan:
enabled: true
base-packages:
- org.example.dev
# application-prod.yml
auto-scan:
enabled: true
base-packages:
- org.example.prod
exclude-packages-regex:
- org\.example\.prod\.test\..*
📚 文档更新
- 架构文档 : 更新了 v1.3.0 架构图,添加了正则表达式过滤层
- 使用案例 : 添加了正则表达式过滤和环境配置的具体场景
- 最佳实践 : 提供了正则表达式使用的最佳实践
- 性能文档 : 添加了正则表达式过滤的性能数据
- FAQ : 新增了正则表达式和环境配置相关问题
🔧 安装依赖
<dependency>
<groupId>org.itrysgroupId>
<artifactId>autoscan-spring-boot-starterartifactId>
<version>1.3.0version>
dependency>
🧪 测试覆盖
- 单元测试 : 覆盖了正则表达式过滤的各种场景
- 集成测试 : 验证了环境条件配置的正确性
- 端到端测试 : 确保了完整扫描流程的可靠性
📝 兼容性
- Spring Boot 版本 : 3.2.0+
- Java 版本 : 17+
- 向后兼容 : 完全兼容 v1.2.0 及之前版本的配置
🎯 技术亮点
- 架构优化 : 在扫描流程中增加了正则表达式过滤层,提升了扫描的灵活性和精确性
- 灵活配置 : 支持复杂的包路径匹配和多环境配置,满足不同场景的需求
- 性能优化 : 正则表达式过滤采用高效的匹配算法,确保扫描性能
- 易用性 : 提供了简洁明了的配置方式和详细的文档,降低使用成本
📞 支持