日期:2014-05-16  浏览次数:20349 次

使用struts2从后台向前台传送json数据的处理
问题:
  使用struts2从后台向前台传送json数据的处理

解决:
  (1)在struts2需要处理数据的action类中写方法:
     private void response(Object message) {
try {
HttpServletResponse response =        ServletActionContext.getResponse();
response.setCharacterEncoding("UTF-8");
response.setContentType("text/plain");
PrintWriter out = response.getWriter();
out.print(message);
out.close();
  } catch (Exception e) {
throw new RuntimeException(e);
}
}
  (2)在action中处理数据的业务方法中:
       JSONObject json = new JSONObject();
       json.put("flag","true");
       this.response(json);
   (3)在前台页面js中可以使用ajax请求:
         $.ajax({
                    type: "POST",
     url : url,
     data: eval("({'month':'201105'})"),
     dataType :'json',
           success:function(msg){
               alert(msg.flag);
                       }
                 });
这样就可以获得后台处理之后返回给前台页面的数据了。