Flink获取外部传递参数的两种方式
目录
一、前言
二、实现
2.1 通过参数方式直接传递
2.2 通过配置文件来获取参数值
一、前言
在Flink中,我们会对接Kafka,Kafka的参数比较多,如果我们希望通过灵活的方式修改参数,而不是把参数值硬编码到代码中,那么可以通过以下两种方式。
二、实现
我们可以使用Flink的内置工具类ParameterTool.get()的方式获取传递的参数值
2.1 通过参数方式直接传递
/*** 从args中获取参数值* 工具类:org.apache.flink.api.java.utils.ParameterTool* 传参方式:-- || - 方式传递* @param args*/def testFromArgs(args: Array[String]): Unit = {val tool: ParameterTool = ParameterTool.fromArgs(args)val groupId: Any = tool.get("group.id", "-") // key,defaultValueval topics = tool.getRequired("topics") //必填参数println(groupId + " : " + topics)}
传参方式:-- || - 两种方式,个人喜欢使用--方式。
2.2 通过配置文件来获取参数值
1)代码:
/*** 从配置文件中获取参数值* important: 生产上不要把配置文件放到resources下,不然修改后要重新打包,我们放到conf下* 文件类型:源码只是去读文件,并没限制文件类型,使用.conf | .txt也可以;* key和value之间分割符: 使用 = 或者 : (源码)** @param args*/def testFromProperties(): Unit = {//val tool: ParameterTool = ParameterTool.fromPropertiesFile("conf/kafka.properties")val groupId: Any = tool.get("group.id", "-") // key,defaultValueval topics = tool.getRequired("topics") //必填参数println(groupId + " : " + topics)}
2)配置文件:
a. 也可以通过配置文件获取,需要注意的是不要把配置文件放到resources目录下,因为修改resources目录下的文件要重新打包。可以新建conf文件夹,放到下面。
b. 文件类型限制:源码只是使用FileInputStream去读文件,并没限制文件类型,使用.conf | .txt也可以,个人喜欢使用properties
c. 分隔符限制:key和value之间分割符: 使用 = || : 都可以,个人喜欢使用=
Flink获取外部传递参数的两种方式相关推荐
- vue 获取请求url_vue 获取url里参数的两种方法小结
我就废话不多说了,大家还是直接看代码吧~ 第一种: const query = Qs.parse(location.search.substring(1)) let passport = query. ...
- vue-router 传递参数的几种方式
本文转载自:https://blog.csdn.net/crazywoniu/article/details/80942642 vue-router传递参数分为两大类 编程式的导航 router.pu ...
- python命令行模式怎么输入_python获得命令行输入的参数的两种方式
外部直接执行python文件时,我们有时需要获得命令行的参数6ok免费资源网 获得命令行参数的两种方式6ok免费资源网 1.通过sys.argv6ok免费资源网 sys.argv:获得一个参数列表,第 ...
- 表单提交和超链接请求传递参数的几种方式
表单提交和超链接请求传递参数的几种方式 这段时间在使用easy-ui的datagrid,他有自己提交表单的方式,所以就整理整理页面对参数的提交方式: 注:下面代码都已经过测试. 1. HTML提交表单 ...
- 【REACT NATIVE 系列教程之十三】利用LISTVIEW与TEXTINPUT制作聊天/对话框获取组件实例常用的两种方式...
本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/react-native/2346.html ...
- putextra 传递对象_intent.putextra用法 使用Intent传递对象的两种方式 - 电脑常识 - 服务器之家...
intent.putextra用法 使用Intent传递对象的两种方式 发布时间:2017-05-22 来源:服务器之家 Intent 的用法相信你已经比较熟悉了,我们可以借助它来启动活动.发送广播. ...
- 获取checkbox选中状态的两种方式_张童瑶的博客
获取checkbox选中状态的两种方式 获取checkbox选中状态的两种方式 第一种方式 第二种方式 我的其他文章 我的其他网站 获取checkbox选中状态的两种方式 我在开发项目的时候遇到这个问 ...
- android获取ip方法,Android开发准确获取手机IP地址的两种方式
最近看了好多网上获取IP地址的例子,发现好多都不完全准确,这里我写一下获取ip地址的两种方式. 比如微信支付,后台在做接口的时候,要求App端传入IP地址,我们需要判断是网络环境,WI-FI还是3G, ...
- 获取用户手机IP的两种方式
安卓获取用户手机IP有两种方式,一种是通过wifi获取,一种是通过GPRS获取. 第一种wifi方式获取: 1.首先设置用户权限 <uses-permission android:name=&q ...
最新文章
- python中文昵称-官方出品 Python 中文文档!拜托,别再说看不懂了
- Sentinel: 分布式系统的流量防卫兵 1
- 【瞎搞】 Codeforces Round 276 DIV 2 C.Bits
- BugkuCTF-MISC题where is flag
- 自动Shader优化器glsl_optimizer的编译与使用
- sys.stdout.write与sys.sterr.write(一)
- [重要公告] 关于禁止发布Windows系统及非法激活软件的通知
- Linux下网站搭建(2)---Mysql安装和基本操作
- Unity VideoPlayer 播放视频
- Linux如何配置DNS服务器
- 答案原文翻译解释《避凶就吉精明鬼,千变万化心不变》这句话是指什么意思?...
- linux hping3命令,hping3命令 – 测试网络及主机的安全
- 谷粒微博学习笔记一:Utilsconstants
- 干货,新手小白做影视剪辑,这样做,帮你99%避免违规侵权
- linux相关命令之top命令
- 如何利用wireshark抓取手机包
- 牛客网——华为题库(11~20)
- 文件所在服务器未响应,电脑用右键点文件没反应直接卡在那儿
- 瑞士军刀增强版socat工具
- 计算机网络安全相关的外国文献,网络安全与防范外文文献翻译中英文.doc
热门文章
- 环信IM SDK使用(四):环信会话列表实现及相关接口介绍
- mysql以及DBeaver的使用
- Java基于SpringBoot+Vue+nodejs的在线小说阅读平台 element
- 计算机和局域网络的保密管理,浅析计算机局域网的安全保密与管理.doc
- 腾讯QQ大数据:用户增长分析——用户流失预警
- Go:Cos求余弦(附完整源码)
- pc控制iphone的软件_太好用了,这个软件可以让你在电脑上自由控制 iPhone和安卓手机!...
- WPF datagrid数据导出到Excel表格
- 面向对象案例——贪吃蛇游戏
- can通讯bdc_纯电动汽车网络总线 数据通信网络连接系统介绍