使用 requestdispatcher.forward 重定向到页面时不显示 unicode 字符

unicode characters are not displayed when requestdispatcher.forward is used to redirect to a page

我正在创建一个支持英语和日语的应用程序。我正在使用资源包和 属性 个文件。

当我使用请求分派器将请求转发到另一个 JSP 文件时出现问题:

  RequestDispatcher rd1 = request.getRequestDispatcher("jsp/Update.jsp");
  rd1.forward(request, response);

日语字符显示为

????

但是,当我通过提供完整路径直接打开 Update.jsp 时,日文字符按预期显示。

请记住,JSP 页面是一个包含 Java 内容的 HTML 页面。

您是否在 JSP 中加入了日文字符集?

<META http-equiv="Content-Type" contentType="text/html; charset=EUC-JP" >
<%@ page contentType="text/html; charset=EUC-JP" %>

如果这不起作用,请尝试这样做:

request.setCharacterEncoding("UTF-8");

转发请求之前