当前的usecase包括接收JSON对象作为post请求的一部分,它可能类似于:
{"employer": 1, "employee": 15}
然后,我想要创建一个“合同”对象,该对象将我的雇主与我的雇员联系起来。
目前,我需要这样的东西
@POST
public Contract createContract(ContractRequest cr) {
Employee employee = employeeDao.getEmployeeFromId(cr.getEmployeeId());
Employer employer = employerDao.getEmployerFromId(cr.getEmployerId());
Contract c = new Contract();
c.setEmployer(employer);
c.setEmployee(employee);
return c;
}
这有几个缺点:我需要定义一个ContractRequest类来捕获I,然后传递给employee/employee。
是否有可能将json映射到一个通用的java map对象,而不是为它显式定义一个类?
发布于 2017-07-29 04:12:49
你可以用杰克逊:
HashMap<String,Object> result = new ObjectMapper().readValue(string, HashMap.class);
或GSON:
String employer = root.getAsJsonObject().get("employer").getAsString();
https://stackoverflow.com/questions/45388941
复制相似问题