如何在DAO对象中使其更具可重用性?
List<User> list = userService.getAll();
JSONObject json = new JSONObject();
JSONArray jsonArray = new JSONArray();
for(User user : list) {
JSONObject userJson = new JSONObject();
userJson.put("id", user.getId());
userJson.put("FirstName", user.getFirstName());
....
jsonArray.add(userJson);
}
json.put("results", jsonArray);
return json.toJsonString();
无论如何,这是来自内存的代码,但你明白了。必须有一个更简单的方法。此外,我们并不总是希望返回POJO的每个属性。在某些情况下,我们可能只需要FirstName
和LastName
,而在其他情况下,我们会添加PhoneNumber
等。
感谢您的任何建议。
答案 0 :(得分:0)
我会使用Google Gson
非常好用
答案 1 :(得分:0)
您还可以尝试Genson库http://code.google.com/p/genson/。
它具有完整的数据绑定支持,但也具有低级流式api。 它易于使用,根据用户的反馈,它比Jackson更容易使用。 它是唯一提供的功能,例如使用带有任何其他注释的构造函数对对象进行反序列化。
要开始使用,您可以查看wiki http://code.google.com/p/genson/wiki/GettingStarted,它应该有助于快速启动。