Сглаживание/расчленение вложенного json в список объектов на основе уникального ключаJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Сглаживание/расчленение вложенного json в список объектов на основе уникального ключа

Сообщение Anonymous »


Учитывая foo.json как ffn

{"оборудование": {"гайка":[{"id":1,"type":"шестигранник","размер":"1/4","отделка":"цинк", "цена":0,12} ,{"id":2,"type":"hex","size":"5/16","finish":"цинк", "price":0.18} ,{"id":3,"type":"hex","size":"3/8","finish":"цинк", "price":0,24}] ,"bolt":[{"id":4,"type":"hex","size":"5/16","finish":"цинк", "length":4,"price":0.10 } ,{"id":5,"type":"hex","size":"3/8","finish":"цинк", "length":4,"price":0.16} ,{"id":6,"type":"hex","size":"7/16","finish":"цинк", "length":4,"price":0.31}] ,"винт":[{"id":7,"type":"дерево","размер":"3/8","отделка":"цинк", "длина":2,"цена":0.64 } ,{"id":8,"type":"дерево","размер":"1/2","отделка":"цинк", "длина":2,"цена":0,88} ,{"id":9,"type":"дерево","размер":"9/16","отделка":"цинк", "длина":2,"цена":1.03}] } } и

Схема StructType = createSchema(); // просто предположим, что это работает искра = SparkSession.builder().master("local[*]").getOrCreate(); Dataset df = spark.read().option("многострочный", true).schema(schema).json(ffn); в это:

1,шестигранник,гайка,фурнитура,"1/4",цинк",ноль,0,12 2,шестигранник,гайка,фурнитура,"5/16",цинк",ноль,0,18 3,шестигранник,гайка,фурнитура,"3/8",цинк",ноль,0,24 4,шестигранный,болт,фурнитура,"5/16",цинк",4,0,10 5,шестигранник,болт,фурнитура,"3/8",цинк",4,0,16 6,шестигранный,болт,фурнитура,"7/16",цинк",4,0,31 7, дерево, винт, фурнитура, «3/8», цинк», 2,0,64 8,дерево,винт,фурнитура,"1/2",цинк",2,0,88 9, дерево, винт, фурнитура, «9/16», цинк», 2,1,03 Короче говоря, я хочу свернуть/сгладить/взорвать вложенные структуры и массивы в одну плоскую таблицу. привязан к уникальному ключу «id», который затем будет записан в список класса Foo
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»