脚本宝典收集整理的这篇文章主要介绍了补充阅读,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
“富函数”是DataStream API提供的一个函数类的接口,所有Flink函数类都有其Rich版本。它与常规函数的不同在于,可以获取运行环境的上下文,并拥有一些生命周期方法,所以可以实现更复杂的功能。
- RichMapFunction
- RichFlatMapFunction
- RichFilterFunction
Rich Function有一个生命周期的概念。典型的生命周期方法有:
- oPEn()方法是rich function的初始化方法,当一个算子例如map或者filter被调用之前open()会被调用。
- close()方法是生命周期中的最后一个调用的方法,做一些清理工作。
- getRuntimeContext()方法提供了函数的RuntimeContext的一些信息,例如函数执行的并行度,任务的名字,以及state状态
富函数普遍拥有方法:
- open(configuration):void
- close():void
- setRuntimeContext(RuntimeContext):void
- getRuntimeContext():RuntimeContext
- 私有静态变量: runtimeContext:RuntimeContext
- W+ :是匹配除了字母、数字、下划线和汉字之外的任意字符
- s+ : 是匹配空格、制表符(tap键)
- 工具类:
- UUID.randomUUID().toString().substring(0, 18)
生成[0,2]的整数
Random r = new Randow();
r.nextInt(3); //[0, 3)的整数,即:0,1,2
TimeUnIT.MILLISECONDS.sleep(50); //线程休眠50毫秒
TimeUnit.SECONDS.sleep(1); //线程休眠1秒
Scala 元组元素个数最多22个
java元组元素个数最多25个
- 方式一: .getField(0)
- 方式二: .f0
- 代码
- 结果:
- 结论:
- 如果前面有被切了,那么得到的字符串数组第一个必有个空字符串
- 注意结尾也切了,但结尾却没有.
Random random = new Random(); TimeZone timeZone = TimeZone.getTimeZone("Asia/Chongqing"); Instant instant = Instant.ofEpochMilli( System.currentTimeMillis()+ timeZone.getOffset(System.currentTimeMillis()) ); System.out.println(instant.toString()); String ouptut = String.format( "{"ts": "%s","user_id": "%s", "item_id":"%s", "category_id": "%s"}", instant.toString(), "user_" + (10000 + random.nextInt(10000)), "item_" + (100000 + random.nextInt(100000)), "category_" + (200 + random.nextInt(200)) ); System.out.println(ouptut);
- import com.alibaba.fastjson.JSON;
- 功能:
- JavaBean =》 JSON格式字符串
- JSON格式字符串 =》 JavaBean
- 用法:
- JSON.toJSONString(javaBean); //将JavaBean对象转化成JSON格式字符串
@Data @NoargsConstructor @AllArgsConstructor private static class DataBean { private String value; } DataBean data = new DataBean(String.valueOf(i)); JSON.toJSONString(data);
以上是脚本宝典为你收集整理的补充阅读全部内容,希望文章能够帮你解决补充阅读所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。