У меня есть список Departments
, который в свою очередь имеет список Employee
, как показано ниже:
Employee emp1 = new Employee("100", "xyz");
Employee emp2 = new Employee("200", "pqr");
Department dept1 = new Department("10", "Account");
List<Employee> empList = new ArrayList<Employee>();
empList.add(emp1);
empList.add(emp2);
dept1.setEmpList(empList);
Ниже приведены классы Department
и Employee
:
public class Employee {
private String id;
private String name;
}
public class Department {
private String id;
private String name;
List<Employee> empList;
}
Я хочу получить список Employee
, в котором будет указан идентификатор отдела и имя
public class EmployeeD {
private String id;
private String name;
private String deptId;
private String deptName;
}
public class EmployeeDepartmentDTO {
private List<EmployeeD> empList;
}
То, что я пробовал, выглядит примерно так:
<mapping map-id="depEmpD">
<class-a>streammapper.Department</class-a>
<class-b>streammapper.EmployeeD</class-b>
<field>
<a>id</a>
<b>deptId</b>
</field>
<field>
<a>name</a>
<b>deptName</b>
</field>
</mapping>
<mapping map-id="department">
<class-a>streammapper.Department</class-a>
<class-b>streammapper.EmployeeDepartmentDTO</class-b>
<field map-id="depEmpD">
<a>empList</a>
<b>empList</b>
</field>
</mapping>
Я могу успешно создать список EmployeeD
без deptId
и deptName
, хотя с приведенным ниже отображением:
<mapping map-id="depEmpD">
<class-a>streammapper.Department</class-a>
<class-b>streammapper.EmployeeD</class-b>
<field>
<a>id</a>
<b>deptId</b>
</field>
<field>
<a>name</a>
<b>deptName</b>
</field>
</mapping>
<mapping map-id="department">
<class-a>streammapper.Department</class-a>
<class-b>streammapper.EmployeeDepartmentDTO</class-b>
<field>
<a>empList</a>
<b>empList</b>
</field>
</mapping>
Мне нужен список EmployeeD
, который будет содержать deptId
и deptName
также в EmployeeDepartmentDTO
объекте.