Nifi 自定义控件,数据插入 使用 merge into 方式

Nifi 自定义控件,数据插入 使用 merge into 方式

Nifi 自定义控件,数据插入 使用 merge into 方式

可以看到 这个 PutDatabaseRecordMerge是 没有版本号的,是我自己开发的控件。

因为系统提供的这个PutDatabaseRecord 只有insert、update、delete之类的处理,没有 merge into 这个方式的处理。

因此就只能自己开发这个控件了。写篇文章记录下 遇到的问题


 

<!-- 必须要有这个,不然 这个控件就不会有 注入新服务,例如 数据库连接之类的配置了-->

<dependency>

    <groupId>org.apache.nifi</groupId>

    <artifactId>nifi-standard-services-api-nar</artifactId>

    <version>${nifi.version}</version>

    <type>nar</type>

</dependency>

其次,因为要复写PutDatabaseRecord,要引入 PutDatabaseRecord所在的jar

<dependency>

    <groupId>org.apache.nifi</groupId>

    <artifactId>nifi-standard-processors</artifactId>

    <version>${nifi.version}</version>

    <scope>provided</scope>

</dependency>

这里的scope必须是provided,不然 再nifi上会出现两个 PutDatabaseRecord,其中一个是没有版本号的,另外一个是系统提供的。

最后自然是编写代码了,下图就是 关键代码,引入了 merge into的操作

Nifi 自定义控件,数据插入 使用 merge into 方式

Nifi 自定义控件,数据插入 使用 merge into 方式

分享下效果图:

Nifi 自定义控件,数据插入 使用 merge into 方式

可以看到 利用了 merge into 这种 sql操作进行数据写入了

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-05
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-17
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案