流中的数据为Java类可以直接转换成对应的表,这个Java类一定要是public的!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 如果不是规范的pojo类型,最后的结果就会是一整个字段。
@Data @NoArgsConstructor @AllArgsConstructor public class Person { private String name; private int age; private String dt; }
StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(2); StreamTableEnvironment tEnv = StreamTableEnvironment.create(env); DataStreamSource<Person> ds = env.fromElements( new Person("lisi", 184545645, "2022"), new Person("lisi", 184545645, "2022"), new Person("wawu", 46545455, "200")); tEnv.createTemporaryView("t",ds); tEnv.sqlQuery(" select * from t ") .execute() .print();