- Integer.valueOf( "123") 将字符串转成Integer类型
- Integer.parseInt("123") 将字符串转成有符号的int类型
“富函数”是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
- System.currentTimeMillis()
TimeUnit.MILLISECONDS.sleep(50); //线程休眠50毫秒
TimeUnit.SECONDS.sleep(1); //线程休眠1秒
- 序列化是将对象序列化成二进制数据保存到本地或者通过网络传输给其它节点
- 反序列化是将二进制的数据反序列化为对象
- 利用序列化和反序列化可以在网络中传输对象。
- 对象的本质其实也就是内存中一块存储区域的数据。
Scala 元组元素个数最多22个
java元组元素个数最多25个
- 方式一: .getField(0)
- 方式二: .f0
先定义转换格式
- FastDateFormat format = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss:SSS")
转换
- System.out.println(format.format(123))
结果:
- Spark
- 1、
- 2、
- 3、
- 4、
- 5、
- Flink
- 1、执行环境-env
- 2、数据源-source
- 3、数据转换-transformation
- 4、输出终端-sink
- 5、触发执行-execute
- (批处理有sink就加上,没有不加上)
- (流处理必须加上execute才能触发执行程序)
- 代码
- 结果:
- 结论:
- 如果前面有被切了,那么得到的字符串数组第一个必有个空字符串
- 注意结尾也切了,但结尾却没有.
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);