0

beanIO を使用して、オブジェクトのリストを json ファイルに書き込む必要があります。私が試したときはいつでも、以下のように最初のオブジェクトだけがファイルに書き込まれます。

{"employeeDetails":[{"recordType":"I","empId":"100","empName":"Name1"}]}

実際の結果は次のようになります。

{"employeeDetails":[{"recordType":"I","empId":"100","empName":"Name1"},{"recordType":"I","empId":"101","empName":"Name2"}]}

以下のように pojo を使用します。

@Record
public class Employee{

@Field(minOccurs=0)
private String recordType;
@Field(minOccurs=0)
private String empId;
@Field(minOccurs=0)
private String empName;

// getters and setters
}

@Record
public class Department{

@Segment(minOccurs=0, collection=List.class)
private List<Employee> employeeDetails;

//getters and setters
}

これが私のimplクラスが行うことです。

StreamFactory streamFactory=StreamFactory.newInstance(); 
streamFactory.loadResource(beanIoPath + beanIoMappingFileName); 
Writer outJson = new BufferedWriter(new FileWriter(new File(absPath+fileName))); 
BeanWriter jsonBeanWriter = streamFactory.createWriter(mapper, outJson); 
Department dpt = //fetch from db; 
jsonBeanWriter.write(dpt);

さらに何を追加する必要があるか、BeanIO を使用してオブジェクトのリストを json ファイルに書き込む方法を提案してください。

ありがとうございました..

4

1 に答える 1