nifi-hzyadev-bundle/nifi-hzyadev-bundle
liuy 10bafb2b50 feat(nifi): 添加自动建表处理器
- 新增 DevAutoJsonTableCreateProcessor 处理器,用于自动创建数据库表
- 实现了连接数据库、检查表存在性、生成建表 SQL 并执行的功能
- 支持 MySQL、SQL Server 和 Oracle 数据库- 添加了自定义 JSON 数组解析方法
- 优化了表名和字段名的处理逻辑,支持不同数据库的特殊要求
2025-07-10 19:14:40 +08:00
..
hzya-nifi-AutoJsonTableCreate-nar feat(nifi): 添加自动建表处理器 2025-07-10 19:14:40 +08:00
hzya-nifi-AutoJsonTableCreate-processors feat(nifi): 添加自动建表处理器 2025-07-10 19:14:40 +08:00
hzya-nifi-DevGeneratePaginatedSqlProcessor-nar 删除 .gitignore 文件 2025-07-09 15:57:14 +08:00
hzya-nifi-DevGeneratePaginatedSqlProcessor-processors feat(nifi): 添加自动建表处理器 2025-07-10 19:14:40 +08:00
.gitignore chore: 添加 .gitignore 文件以忽略操作系统和项目构建生成的临时文件 2025-07-09 15:54:13 +08:00
README.md feat(nifi): 添加自定义分页 SQL 处理器 2025-07-09 15:47:21 +08:00
pom.xml feat(nifi): 添加自动建表处理器 2025-07-10 19:14:40 +08:00

README.md

nifi-hzyadev-bundle 项目

项目概述

这是一个基于 Apache NiFi 1.28.1 的自定义处理器开发项目,名为 nifi-hzyadev-bundle。本项目是一个用于 NiFi 自定义处理器的开发工程,旨在提供灵活的框架来构建和扩展 NiFi 数据流处理功能。项目使用 Maven 构建,基于 Java 开发,并遵循 NiFi 的 NAR 打包规范。

项目结构

hzya-nifi-DevGeneratePaginatedSqlProcessor/
├── .idea/                   # IDE 配置文件
├── hzya-nifi-DevGeneratePaginatedSqlProcessor-nar/
│   ├── target/              # NAR 包构建输出
│   └── m pom.xml            # NAR 模块 Maven 配置文件
├── hzya-nifi-DevGeneratePaginatedSqlProcessor-processor/
│   ├── src/
│   │   ├── main/
│   │   │   ├── java/
│   │   │   │   └── com/hzya/frame/DevGeneratePaginatedSqlProcessor.java  # 自定义处理器主类
│   │   │   ├── resources/   # 资源文件
│   │   │   └── services/    # 服务相关代码
│   │   │       └── org.apache.nifi.processor.Processor  # 处理器接口或服务定义
│   │   └── test/            # 测试代码目录
│   ├── pom.xml              # 处理器模块 Maven 配置文件
│   └── README.md            # 项目说明文档
├── target/                  # 构建输出目录
├── External Libraries       # 外部依赖库
└── Scratches and Consoles   # 临时脚本和控制台

命名规则

本项目遵循统一的命名约定。如果需要开发新的自定义处理器,需创建两个 Maven 子工程:

  • hzya-nifi-处理器名称-nar:用于生成 NiFi NAR 包,包含处理器的构建输出。
  • hzya-nifi-处理器名称-processors:包含处理器核心代码、资源和测试代码。

例如,开发一个名为 MyCustomProcessor 的处理器时,需创建:

  • hzya-nifi-MyCustomProcessor-nar
  • hzya-nifi-MyCustomProcessor-processors

两个工程通过 Maven 模块化管理,nar 工程依赖 processors 工程以打包最终的 NAR 文件。

此外,命名规则还包括:

  • processors 包的包名称统一为 com.hzya.frame
  • 处理器的类名统一为 Dev处理器名称Processor,例如 DevGeneratePaginatedSqlProcessorDevMyCustomProcessor

依赖

本项目使用 Maven 管理依赖,主要依赖包括:

  • Apache NiFi: 1.28.1(自定义处理器开发框架)。
  • Java: 8 或更高版本。
  • JUnit: 用于单元测试(可选)。

具体依赖请查看 pom.xml 文件。

开发环境设置

前置条件

  • JDK: 8 或更高版本。
  • Maven: 3.6.0 或更高版本。
  • Apache NiFi: 1.28.1(需正确安装并配置)。
  • IDE: 推荐使用 IntelliJ IDEA。

设置步骤

  1. 克隆项目

    git clone <repository-url>
    cd hzya-nifi-DevGeneratePaginatedSqlProcessor
    
  2. 安装依赖

    mvn clean install
    
  3. 配置 NiFi

    • 将 NiFi 安装目录设置为环境变量 NIFI_HOME
    • 确保 NiFi 服务已启动。
  4. 导入 IDE

    • 使用 IntelliJ IDEA 打开项目。
    • 配置 Maven 项目并同步依赖。

测试

src/test/ 目录下编写单元测试,验证处理器逻辑。使用 JUnit 框架运行测试。

贡献

欢迎提交问题或拉取请求以改进项目。