|
|
||
|---|---|---|
| .. | ||
| documents | ||
| lib | ||
| src | ||
| .apifox-helper.properties | ||
| README.md | ||
| iles.iml | ||
| pom.xml | ||
| version.txt | ||
README.md
综合执法系统后端服务
基于Spring Boot 3.1构建的企业级执法管理系统后端,采用模块化架构设计。
模块架构
1. 核心模块 (core)
src/main/java/com/aisino/iles/core/
├── config/ # 全局配置
│ ├── WebConfig.java # Web MVC配置
│ └── RedisConfig.java # Redis缓存配置
├── controller/ # 核心控制器
│ ├── StreetInfoController.java # 街道信息管理
│ └── CacheAdminController.java # 缓存管理
├── service/ # 核心业务服务
│ ├── UserService.java # 用户服务
│ └── PermissionService.java # 权限管理
├── repository/ # 数据访问层
│ ├── UserRepo.java # 用户数据访问
│ └── StreetInfoRepo.java # 街道信息访问
├── model/ # 数据模型
│ ├── BaseModel.java # 基础实体
│ └── UserDTO.java # 用户传输对象
└── util/ # 核心工具
└── CacheUtils.java # 缓存工具类
2. 公共模块 (common)
src/main/java/com/aisino/iles/common/
├── util/ # 通用工具
│ ├── ExportExcelHelper.java # Excel导出
│ └── BufferedBlockingQueue.java # 缓冲队列
├── config/ # 公共配置
│ └── SwaggerConfig.java # API文档配置
├── service/ # 公共服务
│ ├── AwsS3Service.java # 文件存储服务
│ └── FtpService.java # 文件上传下载服务(对awsS3Service进行封装)
└── exception/ # 异常处理
└── GlobalExceptionHandler.java # 全局异常处理
3. 执法业务模块 (lawenforcement)
src/main/java/com/aisino/iles/lawenforcement/
├── service/ # 执法业务服务
│ ├── CaseService.java # 案件管理
│ └── EvidenceService.java # 证据管理
├── controller/ # 执法控制器
│ ├── CaseController.java # 案件API
│ └── EvidenceController.java # 证据API
└── model/ # 业务模型
├── CaseDTO.java # 案件传输对象
└── EvidenceVO.java # 证据展示对象
技术栈
- 核心框架: Spring Boot 3.1.12
- 持久层: Spring Data JPA + Hibernate 6.2
- 数据库: MySQL 8.0 / 达梦 DM8
- 缓存: Redis 7.0 + Redisson 3.23
- 文件存储: AWS S3 + FTP
- API文档: Springdoc OpenAPI 3.0
环境配置
# application-dev.yml
redisson:
config: classpath:application-redisson-cache.yml
spring:
datasource:
url: jdbc:h2:mem:testdb
driver-class-name: org.h2.Driver
# application-prod.yml
spring:
datasource:
url: jdbc:kingbase8://db:54321/iles_db
username: ${DB_USER}
password: ${DB_PWD}
依赖管理
mvn install:install-file -DgroupId=com.smartlx -DartifactId=sso-client -Dversion=1.0 -Dpackaging=jar -Dfile=./lib/sso-client-1.0.jar
mvn install:install-file -DgroupId=com.aisino.kingbase -DartifactId=KesDialect-for-hibernate6.2 -Dversion=2.0.0 -Dpackaging=jar -Dfile=./lib/KesDialect-for-hibernate6.2-2.0.0.jar
mvn install:install-file -DgroupId=com.aisino.sm4Interface -DartifactId=kms-sdk -Dversion=1.2 -Dpackaging=jar -Dfile=./lib/kms-sdk-1.2-SNAPSHOT.jar
构建运行
mvn clean package -DskipTests
java -jar target/iles-1.0.0.jar --spring.profiles.active=prod
API文档
- apifox 在线文档