用struts2开发的App后台,返回json数据中文为问号的解决办法
2015-09-27 12:07
597 查看
一个人开发前台app和后台,由于对后台框架了解的不多,暂用struts2+hibernate搭建后台。遇到一个问题,就是struts2的返回值中,中文显示为问号(?),上网查了很多文章才找到了解决方法,提供了两种方案,只有第二种可以解决乱码的问题,一开始用的第一种方案,就是遇到乱码问题,后来采用的第二种就可以了。废话不多说,看代码。第一种:strust.xml配置文件
<action name="send_pass" class="com.secret.action.SendPassAction"> <result name="success">/primer/success.jsp</result> </action>Action代码:
package com.secret.action; import com.opensymphony.xwork2.ActionSupport; public class SendPassAction extends ActionSupport { private String result; public String getResult() { return result; } public void setResult(String result) { this.result = result; } @Override public String execute() throws Exception { result = "{\"status\":1,\"msg\":\"你好世界\"}"; return SUCCESS; } }success.jsp文件比较简单,就一条代码
${result}返回的结果(android和浏览器返回结果一致):{"status":1,"msg":"????"}这种方案结构挺喜欢,可是就是出现乱码问题,(没办法,做程序追求的是结果不是美观),有知道解决方法的请告知。第二种xml文件不变Action代码(这是重点):
package com.secret.action; import java.io.PrintWriter; import javax.servlet.http.HttpServletResponse; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; public class SendPassAction extends ActionSupport { private String result; public String getResult() { return result; } public void setResult(String result) { this.result = result; } @Override public String execute() throws Exception { result = "{\"status\":1,\"msg\":\"你好世界\"}"; HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); out.print(result); out.flush(); out.close(); return NONE; } }返回结果:{"status":1,"msg":"你好世界"}
相关文章推荐
- android Gallery模拟左右滑动的listView
- iOS经典讲解之Objective-C属性的内存管理原理
- android环境大全
- android多线程详解之Handler
- Swift 学习笔记 - 04
- Swift 学习笔记 - 03
- Android的复合RecyclerView
- Swift 学习笔记 - 02
- android改变字体的颜色的三种方法
- SSH整合(一)——直接获取ApplicationContext
- iOS Tips - 02
- 随即抽取的小程序
- Unity5.1.1 AssetBundle的相关理解
- iOS开发之xib技巧介绍
- 14 Best Open Source Web Application Vulnerability Scanners
- 一只蹩脚的Smelly Cat
- iOS多线程操作(NSThread,GCD,NSNSOperation )
- ios-下载管理类封装
- Android项目包装apk和apk反编译,xml反编译
- Android消息处理机制-Looper、Handler、Thread