背景:flink 1.13.2
scala 2.11在使用flink KeyedProcessFunction函数时,在上一步的keyBy函数里使用fieldName,产生了上面的错误类型,说POJO类型不能做为key
1、类的定义
@Data
@EqualsAndHashCode
public class ClickDataEntity implements Serializable, CommonInter {
private static final Logger logger = LoggerFactory.getLogger(ClickDataEntity.class);
private static final long serialVersionUID = -429917380238421788L;
public String processTime; //后台接收时间
.....
}
2、解决方案
2.1 换成Tuple类型,直接使用tuple.f0
2.2 POJO类型,需要再添加一个无参构造方法