README.md 4.0 KB

WindDataTrans 项目说明书

项目概述

WindDataTrans 是一个基于 Spring Boot 2.7.18 的数据转换服务应用,主要用于处理风电场相关数据的采集、转换和传输。项目采用 Maven 构建,使用 Java 8 开发,集成了多种数据处理和存储技术。

技术栈

核心框架

  • Spring Boot 2.7.18
  • Spring Web
  • Spring Scheduling

数据存储与访问

  • MySQL 数据库 (mysql-connector-java 8.0.28)
  • Redis 缓存 (spring-boot-starter-data-redis-reactive)
  • MyBatis-Plus 3.5.7 (ORM 框架)
  • Druid 1.2.25 (数据库连接池)

数据处理

  • Hutool-all 5.7.15 (Java 工具类库)
  • FastJSON 2.0.26 (JSON 处理)
  • Forest 1.5.36 (HTTP 客户端框架)

文档与工具

  • Knife4j 3.0.3 (API 文档)
  • Lombok 1.18.30 (Java 注解工具)
  • Velocity 1.7 (模板引擎)

项目结构

WindDataTrans/
├── src/main/java/com/dskj/znzn/transData/
│   ├── Application.java                 # 应用入口类
│   ├── common/                          # 通用组件
│   │   ├── ThreadLocalUser.java
│   │   ├── annotaions/                  # 自定义注解
│   │   ├── base/                        # 基础类
│   │   ├── conf/                        # 配置类
│   │   ├── exception/                   # 异常处理
│   │   ├── filter/                      # 过滤器
│   │   ├── mybatis/                     # MyBatis 扩展
│   │   ├── service/                     # 通用服务
│   │   └── utils/                       # 工具类
│   ├── crontab/                         # 定时任务
│   │   └── UpdadePlatformData.java      # 平台数据更新任务
│   ├── generate/                        # 代码生成
│   │   └── CodeGenerateMain.java        # 代码生成入口
│   └── web/                             # Web 模块
│       ├── common/                      # Web 通用组件
│       ├── dataTransfer/                # 数据转换模块
│       ├── laserData/                   # 激光数据模块
│       ├── transConf/                   # 传输配置模块
│       └── waveData/                    # 波形数据模块
└── src/main/resources/
    ├── application.yml                  # 主配置文件
    ├── application-*.yml                # 环境特定配置
    ├── logback-*.xml                    # 日志配置
    ├── mapper/                          # MyBatis 映射文件
    └── static/                          # 静态资源

配置说明

主要配置文件

  • application.yml: 主配置文件,包含服务器端口(9001)、数据源配置等
  • 环境特定配置: application-dev.yml(开发)、application-prod.yml(生产)等
  • 日志配置: logback-dev.xml(开发)、logback-prod.xml(生产)

数据库配置

默认使用 Druid 连接池,配置包含:

  • 初始连接数: 30
  • 最大活跃连接数: 300
  • 最大等待时间: 600000ms
  • 最小空闲连接数: 20

功能模块

1. 数据采集与传输

  • web/dataTransfer: 数据转换接口
  • web/waveData: 波形数据接口
  • web/laserData: 激光数据接口

2. 定时任务

  • crontab/UpdadePlatformData.java: 平台数据定时更新任务

3. 配置管理

  • web/transConf: 传输配置管理

4. 代码生成

  • generate/CodeGenerateMain.java: 代码生成工具

启动说明

环境要求

  • JDK 8
  • Maven 3.6+
  • MySQL 5.7+
  • Redis (可选)

启动步骤

  1. 配置数据库连接信息
  2. 选择激活环境: 在 application.yml 中设置 spring.profiles.active
  3. 执行 Maven 命令: mvn spring-boot:run
  4. 访问 API 文档: http://localhost:9001/doc.html (Knife4j)

开发指南

代码规范

  • 遵循 Java 编码规范
  • 使用 Lombok 注解减少样板代码
  • 异常统一处理

模块开发

  1. 在 web 目录下创建新的业务模块
  2. 使用 CodeGenerateMain 生成基础代码
  3. 实现业务逻辑
  4. 添加单元测试