Struct Util 权威指南 - 框架简介

少于 1 分钟阅读

Struct Util 是一个 Java 语言开发的结构化数据映射处理工具。Struct Util 主要解决两个方面的问题。第一个方面将*.xls, *.csv 等配置友好型数据源转换为业务侧友好型的 bean 结构,对配置数据和使用数据进行解耦,让开发和运营实现共赢。第二方面解决了数据表热重载,数据有条件过滤,表结构跨表引用等等应用相关的问题。

StructUtil是博主个人作品, 稍微有自吹自擂的嫌疑, 欢迎:star:收藏。哈哈, 因为是个人作品,应该是足够”权威”了。嘻嘻~~

由于包名和包路径不符合 maven repo 的管理要求,没有推送到 maven repo,有兴趣尝试的同学可以尝试 github 下载或者自行编译发布本地。

功能特性

  • 低侵入。对已有的代码仅需使用 StructField 和 StructSheet 两个注解
  • 高性能、低内存占用。使用增量或 Stream API 的方式避免大文件读取带来的低性能、高内存占用的问题
  • 扩展性。提供 WorkerMatcher、StructHandler、Converter 等扩展点供用户实现自定义扩展功能
  • 结构化数据自动校验和检查。自动检查校验结构化数据及依赖之间的关系。避免出现循环依赖等问题
  • 丰富的内置解析器。内置提供 .xls、.xlsx、.json、.xml 四种常见结构化数据的解析器(扩展中)
  • 丰富的 JDK 原生类的类型转换支持
  • 自定义类型转换器{Converter}
  • 灵活的结构化数据整理机制。输出的结果支持 Array、List、Map、Vector、Set 等 JDK 内置或自定义的集合容器
  • 灵活的文件变更监听和结构化数据文件动态加载能力
  • 支持 Record 类型(JDK 16+).

架构设计

参考资料

知识共享许可协议

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 TinyZ Zzh (包含链接: https://tinyzzh.github.io ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。 如有任何疑问,请 与我联系 (tinyzzh815@gmail.com)

TinyZ Zzh

TinyZ Zzh

专注于高并发服务器、网络游戏相关(Java、PHP、Unity3D、Unreal Engine等)技术,热爱游戏事业, 正在努力实现自我价值当中。

评论

  点击开始评论...