# ali-datahub **Repository Path**: kaigejava/ali-datahub ## Basic Information - **Project Name**: ali-datahub - **Description**: 阿里datahub接入测试 - **Primary Language**: JavaScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-09 - **Last Updated**: 2025-12-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Alibaba DataHub Spring Boot Application ## 项目说明 这是一个基于 Spring Boot 的阿里云 DataHub 生产者和消费者应用程序。 ## 环境要求 - JDK 1.8 - Maven 3.x - 阿里云账号和 DataHub 访问权限 ## 配置说明 ### 1. 设置环境变量 在运行应用之前,需要设置阿里云 AK/SK 环境变量: 如果不知道AK/SK,请参考[在环境变量中配置身份验证AccessKey](https://help.aliyun.com/zh/direct-mail/configure-the-authentication-accesskey-in-the-environment-variable)获取。 **Windows (PowerShell):** ```powershell $env:ALIBABA_CLOUD_ACCESS_KEY_ID="your_access_key_id" $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET="your_access_key_secret" ``` **Linux/Mac:** ```bash export ALIBABA_CLOUD_ACCESS_KEY_ID="your_access_key_id" export ALIBABA_CLOUD_ACCESS_KEY_SECRET="your_access_key_secret" ``` ### 2. 修改配置文件 编辑 `src/main/resources/application.properties`,根据需要修改配置: - `datahub.endpoint`: DataHub 服务地址 3. **具体获取步骤**: - 登录阿里云DataHub控制台 - 查看您创建的Project所在的地域 - 根据网络环境(公网/VPC/经典网络)选择对应的endpoint - 详细信息请参考"DataHub域名列表"文档 - `datahub.project-name`: 项目名称(当前为 test251209) - `datahub.topic-name`: Topic 名称(当前为 test01) - `datahub.sub-id`: 订阅 ID(可选) ## 运行应用 ### 1. 编译项目 ```bash mvn clean package ``` ### 2. 运行应用 ```bash mvn spring-boot:run ``` 或者: ```bash java -jar target/ali-datahub-1.0.0.jar ``` ## 使用说明 ### 生产者 (Producer) 1. 启动应用后,访问:http://localhost:8080 2. 在页面上输入电表数据: - 电表 ID (meterid) - 电压 (voltage) - 时间戳 (timetemp) 3. 点击"发送数据到 DataHub"按钮 4. 可以点击"自动填充示例数据"快速填充表单 ### 消费者 (Consumer) - 消费者在应用启动时自动运行 - 接收到的数据会: 1. 打印到控制台 2. 保存到 `./datahub-data/data_时间戳.txt` 文件中 - 每条数据保存为 JSON 格式字符串 ## API 接口 ### 发送数据 ``` POST /api/datahub/send Content-Type: application/json { "meterid": "METER001", "voltage": 220.5, "timetemp": "2023-12-09 10:30:00" } ``` ### 查看统计 ``` GET /api/datahub/stats ``` ## 项目结构 ``` ali-datahub/ ├── src/main/java/com/example/datahub/ │ ├── DataHubApplication.java # 主应用类 │ ├── config/ │ │ └── DataHubProperties.java # 配置属性 │ ├── controller/ │ │ └── DataHubController.java # REST 控制器 │ ├── model/ │ │ └── MeterData.java # 数据模型 │ └── service/ │ ├── DataHubProducerService.java # 生产者服务 │ └── DataHubConsumerService.java # 消费者服务 ├── src/main/resources/ │ ├── application.properties # 配置文件 │ └── static/ │ └── index.html # Web 页面 └── pom.xml # Maven 配置 ``` ## 注意事项 1. 确保已经在阿里云创建了 DataHub Project 和 Topic 2. Topic Schema 必须包含 meterid、voltage、timetemp 三个字段 3. 确保设置了正确的环境变量 4. 消费者数据文件保存在 `./datahub-data/` 目录下