wzl пре 4 дана
родитељ
комит
3ac226b0f7
4 измењених фајлова са 155 додато и 2 уклоњено
  1. 113 0
      README.md
  2. 15 0
      pom.xml
  3. 25 0
      src/main/resources/application-jilin.yml
  4. 2 2
      src/main/resources/application.yml

+ 113 - 0
README.md

@@ -0,0 +1,113 @@
+# 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. 添加单元测试
+        

+ 15 - 0
pom.xml

@@ -101,6 +101,21 @@
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
 
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-core</artifactId>
+            <version>2.15.2</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
+            <version>2.15.2</version>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.dataformat</groupId>
+            <artifactId>jackson-dataformat-yaml</artifactId>
+            <version>2.15.2</version>
+        </dependency>
 
     </dependencies>
 

+ 25 - 0
src/main/resources/application-jilin.yml

@@ -0,0 +1,25 @@
+server:
+  port: 9002
+knife4j:
+  enable: true
+  setting:
+    language: zh-CN
+    swagger-model-name: 模型
+
+spring:
+  datasource:
+    url: jdbc:mysql://127.0.0.1:3306/energy_data?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useSSL=false&serverTimezone=Asia/Shanghai
+    username: root
+    password: 123456
+
+
+logging:
+  level:
+    com.baomidou.mybatisplus: debug  # MyBatis-Plus 日志级别
+    com.dskj.znzn.transData.web.transConf.mapper: debug
+    com.dskj.znzn.transData.web.waveData.mapper: debug
+    com.dskj.znzn.transData.web.dataTransfer.mapper: debug
+    com.dskj.znzn.transData.web.common.mapper: debug
+
+
+  config: classpath:logback-prod.xml

+ 2 - 2
src/main/resources/application.yml

@@ -2,7 +2,7 @@ server:
   port: 9001
 spring:
   profiles:
-    active: huadian
+    active: jilin
 
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
@@ -11,7 +11,7 @@ spring:
       log-abandoned: false
       max-active: 300
       max-wait: 600000
-      min-idle: 20
+      min-idle: 205
       pool-prepared-statements: false
       remove-abandoned: false
       remove-abandoned-timeout-millis: 3000