# spring4-opcua-client **Repository Path**: david0624/spring4-opcua-client ## Basic Information - **Project Name**: spring4-opcua-client - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-22 - **Last Updated**: 2026-05-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Spring 4 OPC UA Client 本项目是一个基于 **Spring Boot** (虚拟版本 4.0.2, 实际基于 Jakarta EE 10 / Spring Boot 3 特性) 与 **Eclipse Milo** 的 OPC UA 客户端基座项目。 ## 🚀 项目核心功能 - **连接管理**: 支持匿名与用户名认证,涵盖多种安全策略(None, Basic128Rsa15, Basic256 等)。 - **节点浏览**: 实现深度的递归浏览,支持服务端分页(ContinuationPoint)与环路检测。 - **属性读取**: 高效的批量属性拉取(单次请求获取 7 个核心元数据,如 Value, DataType, AccessLevel 等)。 - **自动回收**: 内置轻量级的连接空闲检测与自动释放机制,优化服务端资源占用。 ## 📂 项目结构 ```text spring4-opcua-client/ ├── app/ # Web 应用模块 (Spring Boot + REST API) ├── common/ # 通用工具类与基础定义 ├── docs/ # 📖 核心技术文档 (交接/维护必读) └── data/ # 数据存储与客户端证书 ``` ## 📖 开发者文档 为了方便后续交接和系统扩展,请查阅以下详细文档: 1. [01-项目概览与架构](./docs/01-项目概览与架构.md) - **推荐首选**: 技术选型、分层架构与组件交互设计。 2. [02-连接管理深度解析](./docs/02-连接管理深度解析.md) - 深入了解连接生命周期、安全配置及自动回收逻辑。 3. [03-业务功能实现原理](./docs/03-业务功能实现原理.md) - 详解批量读取优化、递归浏览算法及数据类型转换。 4. [04-配置与快速上手](./docs/04-配置与快速上手.md) - 包含核心配置说明及 REST API 测试指南。 ## 🛠️ 快速启动 1. **环境准备**: 确保使用 JDK 21+。 2. **修改配置**: 在 `app/src/main/resources/application.yaml` 中配置目标服务器的 `endpoint-url`。 3. **启动应用**: 运行 `pers.apricot.web.Application`。 4. **验证连接**: 访问 `http://localhost:8080/api/opcua/browse` 即可看到服务器节点树。 ## ⚠️ 关键建议 - **证书管理**: 首次连接加密服务器时,需在服务端管理界面“信任”本客户端生成的证书。 - **性能调优**: 节点浏览属于耗时操作,建议在生产环境中对浏览结果进行缓存。