小编Saf*_*Eek的帖子

在 HTTPServlet 请求中编码 UTF-8

这可能看起来像是一个已经解决的问题,但事实并非如此,因为我已经解决了与 UTF-8 相关的所有问题,但没有一个解决方案对我有帮助。

我正在使用 JSON 简单库向包含 JSON 对象的 java servlet 发送 http 请求。

  1. 我在Tomcat xml文件中添加了UTF-8编码
  2. 我的 HTML 页面支持 UTF-8 编码
  3. 我的数据库和我所有的表也是 UTF-8 编码的
  4. 我使用系统变量将 JVM 的默认编码更改为 UTF-8(是的!这就是我的绝望)

这是我的调度员功能:

    protected void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException {

    request.setCharacterEncoding("UTF-8");

    AjaxParser cr = AjaxParser.ClientRequestFactory();
    ClientRequest msg = cr.ParseClientAjax(request);


    HandleRequest HR = new HandleRequest();
    HandleRequestStatus HRS = HR.HandleMessage(msg);

    AjaxResponseGenerator ARG = new AjaxResponseGenerator();
    JSONObject jsonObj = ARG.HandleResponse(HRS);
    response.setCharacterEncoding("UTF-8");
    response.setContentType("application/json");
    PrintWriter out = response.getWriter();
    System.out.println(jsonObj);// write the json object to console
    out.println(jsonObj);

} …
Run Code Online (Sandbox Code Playgroud)

java encoding json http utf-8

2
推荐指数
1
解决办法
4874
查看次数

标签 统计

encoding ×1

http ×1

java ×1

json ×1

utf-8 ×1