Tomcat 実行時の JVM エンコーディングの問題を修正

Tomcat 実行時の JVM エンコーディングの問題を修正

質問:

最近、プロジェクトを展開すると文字化けしたデータが出てきました。確認したところ、プロジェクトはUTF-8エンコード形式を使用しており、データも使用されていました。しかし、呼び出しインターフェースを通じて相手に送信される際に文字化けが発生していました。

Windows 環境に展開されるため、Windows のデフォルトのエンコーディングは GBK であり、JVM 実行時にエンコーディングが不一致になるという問題が発生し、変更も容易です。

解決:

Linux環境でUTF-8エンコーディングを使用する場合、LinuxはデフォルトでUTF-8を使用するため、変更する必要はありません。

warパッケージはTomcatにデプロイされます

JVMエンコーディングを変更する

Linux環境

catalina.sh での設定

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=utf-8"

Windows 環境でのデフォルトのエンコード形式は GBK であるため、Tomcat の実行時にエンコード形式を変更する必要があります。

Windows環境

catalina.bat での設定

set JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8

jar パッケージのデプロイメントの場合は、起動コマンドに jvm パラメータを追加するだけで済みます。

JAR パッケージの展開

起動コマンドにJVMパラメータを追加する

java -Dfile.encoding=UTF-8 -jar xxx.jar

要約する

上記は、Tomcat 実行時の JVM エンコーディングの問題を修正するための編集者による紹介です。皆様のお役に立てれば幸いです。

以下もご興味があるかもしれません:
  • JavaメモリモデルとJVMランタイムデータ領域の違いの詳細な説明
  • JVMランタイムデータ領域の原則の分析
  • JVM: 後期(実行時)最適化の詳細な理解
  • Java仮想マシン(JVM)ランタイムの詳細な説明
  • JVM ランタイム メモリ使用量監視の詳細な説明
  • JVM コアチュートリアル: JVM 操作とクラスロードの全プロセスの詳細な説明
  • IntelliJ IDEA で JVM 実行パラメータを設定する方法
  • JVM実行時のデータ領域分割の原理の詳細な説明

<<:  WeChatアプレットで計算機機能を実装する

>>:  MySQL クラスター化インデックスのページ分割原理の分析例

推薦する

HTMLはマーキーを使用してテキストを左右にスクロールします

コードをコピーコードは次のとおりです。 <本文> //マーキーの助けを借りて<MA...

Vueにログイン認証傍受機能を設置するアイデアを詳しく解説

目次1. 解決策2. サーバーから返されたトークンをブラウザに保存する3. リクエストにアクセス権限...

MySql Installer 8.0.18 画像とテキストによるビジュアル インストール チュートリアル

目次1. MySQL 8.0.18のインストール2. 環境変数を設定する3. 接続テスト1. MyS...

Linux スクリプトの基礎を詳しく紹介

目次1. スクリプトvim環境2. シェルスクリプトで環境を定義する方法3. シェルスクリプト内の翻...

シンプルな画像ドラッグ効果を実現する js

この記事では、簡単な画像ドラッグ効果を実現するためのjsの具体的なコードを参考までに紹介します。具体...

Nginx 502 Bad Gateway エラーの原因と解決策

Nginx 502 Bad Gateway エラーに何度か遭遇しました。ここでメモしておこうと思いま...

CSS3で作られたレインボーボタンスタイル

結果: 実装コード: html <div class="buttons"&...

MySql8.0 のトランザクション分離レベルエラーの問題を解決する

目次MySql8.0 トランザクション分離レベルエラーの表示質問コマンドは次のように変更されますMy...

docker のインストールが完了し、bridge-nf-call-iptables が無効であると報告される問題を解決します

Centos マシンで docker のインストールが完了したら、docker info コマンドを...

iframe の src を about:blank に設定した後の詳細

iframe の src を 'about:blank' に設定した後、"...

CSSは座席選択効果を実現するためにautoflow属性を使用する

1. 自動フロー属性、要素コンテンツの長さと幅が要素自体の長さと幅を超える場合、スクロールバーが表示...

美容・スタイリングウェブサイト向けのカラーマッチングテクニックと効果表示

色はあらゆるウェブサイトにとって最も重要な要素の 1 つであり、閲覧者に大きな影響を与えるため、色の...

Linux のファイル システム タイプの表示方法の例

Linux でパーティションのファイル システム タイプを確認する方法。パーティションのファイル シ...

Linux 環境に MySQL 8.0 をインストールするプロセスの紹介

目次序文1. Linux は yum ソースを変更します (MYSQL のインストールが遅い場合は試...

Keras を使って SQL インジェクション攻撃を判断する (例の説明)

この記事では、ディープラーニングフレームワーク keras を使用して、SQL インジェクションの特...