Javaでの値の転送が文字化けする問題の解決策

リリース: 2019-12-12 16:33:18
オリジナル
2038 人が閲覧しました

Javaでの値の転送が文字化けする問題の解決策

JavaWeb を実行していると、時々中国語の値が文字化けする問題に遭遇することがあります。「ISO-8859-1」をすべて「UTF-8」に変更した後、それでも役に立たないことがわかります。そこで、(少なくとも現時点では)常に機能する方法を見つけました。それは、「UTF-8」エンコーディングへの変換を強制することです。コードを見てください:

@RequestMapping("/success.html")
public String success(String userCode, Model model) {
    try {
        // 编码转换,防止中文乱码
        userCode = new String(userCode.getBytes("ISO-8859-1"), "UTF-8");
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }
    log.info("userCode:" + userCode);
    model.addAttribute("userCode", userCode);
    return "success";
}
ログイン後にコピー

もう 1 つの方法は、構成 web.xml ファイルにエンコード フィルターを追加することです。これにより、文字化けせずに中国語の値を送信することもできます。

<!-- 编码过滤器 -->
<filter>
    <filter-name>encodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
</filter>

<filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
ログイン後にコピー

Java の知識をさらに深めたい場合は、java 基本チュートリアル 列に注目してください。

以上がJavaでの値の転送が文字化けする問題の解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート