我们说我有一个包含JSON文档的文件,如下所示:
{
"name" : "J Smith",
"age" : 33,
"child" : {
"name" : "K Smith",
"age" : 12
}
}
如何为此创建一个编码器来维护child
文档,而不必为此创建编码器?到目前为止的努力看起来像这样:
Encoder<Person> personEncoder = Encoders.bean(Person.class);
Dataset<Person> personDs = spark.read().json(EnvironmentProps.RAW_DATA_LOCATION).as(personEncoder);
Person类看起来像:
public class Person {
private String name;
private int age;
private String child; // <- what data type should this be to preserve it?
public Person(){}
public Person(String name, int age, String child){
...
}
这种方法很有效,但是当我把文件写出来时,子文档就会出现一长串数字,我想做的就是让它保持原样。