把后台参数转化为json

我刚刚接触java 看了别人写的一些代码不理解

protected String sendJson(String status, Object obj) throws IOException
{
Map _map = new HashMap();
[color=red] //map 这样写的好处 能否给点看得到的说明[/color] _map.put("status", status);
_map.put("values", obj);

    PrintWriter out = [color=red]ServletActionContext.getResponse().getWriter();

//PrintWriter 输出流 与ServletActionContext 有关系? 这个好像是struts2与页面交互数据的一个存放数据的类似于容器的 而getResponse() 获取相应 getWriter 获取写入的流?[/color] try
{
String returnStr = JSONUtil.serialize(_map);
[color=red]JSONUtil.serialize json 序列化 放到流中?[/color] out.print(returnStr);
out.flush();
out.close();
} catch (Exception e)
{
out.print("{status:'EXCEPTION',values:'" + e.getMessage() + "'}");
}
return NONE;
}
请让我别再迷糊 谢谢!!!

//map 这样写的好处 能否给点看得到的说明 _map.put("status", status);
//java泛型的使用,便于取人map 中存放数据的类型.
PrintWriter out = ServletActionContext.getResponse().getWriter();

等价于 response.getWriter();也就是Servlet的输出流而已.
平常使用servlet是,是采用页面跳转,然而在servlet本质上是通过输出流输出HTM

String returnStr = JSONUtil.serialize(_map);
returnStr 自己debug一下,应该是一个json格式的字符串.

一楼说的很详细了,不能投票,支持一下,呵呵