在DataStream作业中,您可以根据实际需求从main方法中获取自定义参数。

自定义参数的配置和获取方法

在DataStream作业中定义paramName=paramValue,即可在main方法中获取自定义参数。
  • paramName:自定义参数名
  • paramValue:自定义参数值
说明 一个DataStream作业中可定义多个自定义参数。

自定义参数的配置和获取示例

说明 在开发界面配置blink.job.name=jobnametest后,可以通过如下代码将字符串jobnametest赋值于jobName变量。
import org.apache.flink.api.java.utils.ParameterTool;
import java.io.StringReader;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Properties;

public class getParameterExample {
    public static void main(String[] args)throws Exception {
        final String jobName;
        final ParameterTool params = ParameterTool.fromArgs(args);

        /*此处必须写configFile,读取configFile中参数。*/
        String configFilePath = params.get("configFile");

        /*创建一个Properties对象用于保存在平台中设置的相关参数值。*/
        Properties properties = new Properties();

        /*将平台页面中设置的参数值加载到Properties对象中。*/
        properties.load(new StringReader(new String(Files.readAllBytes(Paths.get(configFilePath)), StandardCharsets.UTF_8)));

        /*获取参数。*/
        jobName = (String) properties.get("blink.job.name");
    }
}