lao19884wang
2012-12-20 10:09
浏览 248
已采纳

把后台参数转化为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;
}
请让我别再迷糊 谢谢!!!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 永恒的罗纳尔多 2012-12-20 11:28
    已采纳

    //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格式的字符串.

    点赞 打赏 评论
  • alilang8852 2012-12-20 17:45

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

    点赞 打赏 评论

相关推荐 更多相似问题