小编Pon*_*ons的帖子

Apache Nifi - 从Avro中提取属性

我正试图从Avro和JSON中提取属性.我可以使用EvaluateJsonPath处理器从JSON中提取属性.我试图在Avro上做同样的事,但我不确定它是否可以实现.

这是我的流程,ExecuteSQL- > SplitAvro- >UpdateAttribute

UpdateAttribute是我想要提取属性的处理器.请在下面找到UpdateAttribute处理器的快照,

UpdateAttribute处理器配置

所以,我的基本问题是,我们可以从Avro中提取属性吗?如果是,请为我提供正确的方法.或者ConvertAvroToJSON在提取属性之前是否必须始终使用?

json avro apache-nifi

6
推荐指数
1
解决办法
3322
查看次数

如何用Java 8流替换嵌套循环

我想将Java 8流用于以下实现。基本上,我想解析一个列表并形成另一个不同对象的列表。

输入 -Person pojos列表, 输出 -PersonInfo pojos列表

    List<Person> persons = new ArrayList<Person>();

    Person max = new Person();
    max.setName("Max");
    max.setAge(10);
    max.addAddress(new Address("Street1", "City1"));
    max.addAddress(new Address("Street2", "City2"));

    Person peter = new Person();
    peter.setName("Peter");
    peter.setAge(20);
    peter.addAddress(new Address("Street1", "City1"));
    peter.addAddress(new Address("Street2", "City2"));

    persons.add(max);
    persons.add(peter);

    System.out.println("Input: " + persons);

    List<PersonInfo> personInfos = new ArrayList<PersonInfo>();
    PersonInfo personInfo = null;
    for (Person person : persons) {
        for (Address addr : person.getCurrAndPrevAddrs()) {
            personInfo = new PersonInfo();
            personInfo.setName(person.getName());
            personInfo.setAge(person.getAge());
            personInfo.setAddrs(addr);              
            personInfos.add(personInfo);
        }
    }

    System.out.println("Output: " + personInfos.toString()); …
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

4
推荐指数
1
解决办法
4002
查看次数

标签 统计

apache-nifi ×1

avro ×1

java ×1

java-8 ×1

java-stream ×1

json ×1