# hj212-demo **Repository Path**: my-java-tutorial/hj212-demo ## Basic Information - **Project Name**: hj212-demo - **Description**: Netty服务端,用于接收设备数据。环保设备采用的是HJ212协议 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 2 - **Created**: 2025-04-07 - **Last Updated**: 2025-10-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 项目核心目标总结 本项目是一个基于 **HJ212 环保数据传输协议**的污染源在线监测系统,核心功能为 **接收并解析环保设备上传的实时监测数据**。具体实现目标如下: --- ### 技术实现 | 功能模块 | 实现技术 | 关键代码文件 | |-------------------------|--------------------------|--------------------------------| | **数据接收层** | Netty 网络框架 | `EPServer.java` | | **协议解析层** | FastJSON + 正则处理 | `HJ212MsgUtils.java` | | **业务处理层** | Spring Boot 应用框架 | `Hj212Application.java` | --- ### 功能模块分解 1. **Netty 服务端** - 监听指定端口(`application.yml`配置) - 使用`DelimiterBasedFrameDecoder`解决TCP粘包问题(`\r\n`分隔符) - 内置心跳检测(65分钟空闲超时) 2. **协议解析引擎** - `dealMsg1()`:基础解析(提取消息头、数据体、校验尾) - `dealMsg2()`:高级解析(污染源分类统计) 3. **污染源指标处理** - 支持多种污染物参数解析(B02、S01、a24088等编码对应具体污染物) - 计算最小值(Min)、平均值(Avg)、最大值(Max)、累计值(Cou) --- ### 典型应用场景 ✅ 环保部门对工业企业污染排放的实时监控 ✅ 污水处理厂运行状态远程监测 ✅ 环境监测站空气质量数据分析 --- ### 技术选型亮点 - **高性能网络层**:Netty的Reactor线程模型支撑高并发数据接入 - **轻量级协议解析**:FastJSON实现毫秒级数据转换 - **可扩展架构**:通过Spring Boot Starter实现模块化部署 > 提示:通过`HJ212MsgUtils.main()`方法可直接测试协议解析效果,详见代码片段3。