Flink的传参工具类

Flink提供一个ParameterTool工具类获取参数,提供fromArgs、fromPropertiesFile、fromMap、fromSystemProperties的方式

  1. fromArgs从main入参中获取
  2. fromPropertiesFile从文件中获取
  3. fromMap从map中获取
  4. fromSystemProperties从系统参数中获取

ParameterTool提供了get、getRequired、getInt、getLong、getFloat、getDouble、getBoolean、getShort、getByte等方法,每种类型的get均提供了一个支持defaultValue的方法

从args中获取

// 从args获取参数
def fromArgs(args: Array[String]): Unit ={
val tool = ParameterTool.fromArgs(args)
// 必选
val id = tool.getRequired("id")
// 可选
val name = tool.get("name", "暂无")
}

从文件最中获取

def fromPropertiesFile(): Unit ={
val tool = ParameterTool.fromPropertiesFile("...")
// 必选
val id = tool.getRequired("id")
// 可选
val name = tool.get("name", "暂无")
}
Author: Tunan
Link: http://yerias.github.io/2020/12/20/flink/3/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.