给定员工和公司等级
Company { String companyName; } Employee { String employeeName; }
和我的代码如下
List<Employee> e = new ArrayList<Employee>(); ..... .....
我希望我能得到这样的结果
{ "company":{ "companyName":"cName", "Employee":[ {"employeeName":"myName1"}, {"employeeName":"myName2"}, {"employeeName":"myName3"} ] } }
这是一个简单的问题,但是我有些困惑。…尤其是Gson和Json…。
请不要提出其他图书馆,我 强制NEED 这个库的工作。而且由于某些情况,我 不 想要这个课。
Company { String companyName; List<Employee> employees; }
因此,我需要 手动 将其序列化为json字符串。
编辑: @Sotirios Delimanolis声明的类是设计类之间关系的正确方法。但是,那不是我想要的。
@hsluo的答案是正确的!和@Sotirios Delimanolis提到的一样。完全解决这个问题。
我确实找到了另一种使用Hashmap的方法
HashMap k = new HashMap(); List<employee> y = new ArrayList<employee>(); y...... k.put("records", y); k.put("total", total);
然后返回到@Responbody,结果与@hsluo回答完全相同。
并感谢@Sotirios Delimanolis,@ hsluo来帮助我。
ObjectMapper mapper = new ObjectMapper(); List<Employee> e = new ArrayList<Employee>(); ArrayNode array = mapper.valueToTree(e); ObjectNode companyNode = mapper.valueToTree(company); companyNode.putArray("Employee").addAll(array); JsonNode result = mapper.createObjectNode().set("company", companyNode);