希望你能帮助我。
目前我在 xml
中收到两个文件格式,我想知道如何使用 jaxb
将这两个文件关联到同一个类.
Company.xml
<?xml version="1.0" encoding="utf-8"?>
</records>
<record>
<id>4<id>
<companyName>B</companyName>
......
</record>
<record>
<id>7<id>
<companyName>B</companyName>
......
</record>
</records>
Employees.xml
<?xml version="1.0" encoding="utf-8"?>
<records>
<record>
<EmployeeName>AA</EmployeeName>
<CompanyID>2</CompanyID>
</record>
<record>
<EmployeeName>AB</EmployeeName>
<CompanyID>2</CompanyID>
</record>
</records>
我想知道如何生成与这些字段 id 公司相关的类
public class Companys{
private List<Company> list;
}
public class Company{
private String companyName;
private Integer id;
.........
//I need use JaxB --reference ID company
private List<Employees> list;
}
public class Employee{
private String Name;
private Integer idCompany;
.......................
}
最佳答案
您可以使用 map 。
public class Companies{
private Map<Integer, Company> map = new HashMap<>();
void put(Integer id, Company company) {
map.put(id, company);
}
Company get(Integer id) {
return map.get(id);
}
}
获得员工列表后,您可以迭代它们并将其应用到公司 map 上。
Company company = companies.get(employee.getIdCompany());
company.addEmployee(employee);
或者,您可以在公司内部创建一个名为 addEmployee
的方法
void addEmployee(Employee employee) {
companies.get(employee.getIdCompany()).addEmployee(employee);
}
关于java - 正如我可以在一个类中关联两个不同的文件与 jaxb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42213282/