处理Struts2的action中对返回的json在另一端接收乱码问题

来源:互联网 发布:beowulf linux 编辑:程序博客网 时间:2024/05/17 13:43
private JSONObject result;
private IAppService ssuAppService;

public String getApps(){
logger.info("OuterInterfaceAction getApps()..start" );
result = new JSONObject();
try {
List<App> listApp = ssuAppService.getAppList();
if(null==listApp||listApp.size()<1){
result.put("returnCode", "10");
result.put("returnMsg", "app不存在");
return SUCCESS;
}
JsonConfig jsonConfig = new JsonConfig();  //建立配置文件
  jsonConfig.setIgnoreDefaultExcludes(false);       
  jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);     
  jsonConfig.setExcludes(new String[]{"deviceType","className","entityDescription","objectDescription","objectID","objectName"});  //jsconfig  设置过滤属性  
 
  result.put("returnCode", "00");
result.put("returnMsg", "认证成功");

result.put("extraInfo", JSONArray.fromObject(listApp, jsonConfig).toString());

//处理编码开始

HttpServletResponse response = ServletActionContext.getResponse(); 
response.setContentType("text/html;charset=GBK");//转换成你需要接收字符的编码
response.getWriter().write(result.toString());
response.getWriter().flush();

response.getWriter().close();

//转码结束

return SUCCESS;
} catch (Exception e) {
result.put("returnCode", "-1");
result.put("returnMsg", "认证失败,接口发生异常");
e.printStackTrace();
return SUCCESS;
}

}
0 0
原创粉丝点击