Java サーブレットは国際化をどのようにサポートしますか?

PHPz
リリース: 2024-04-16 14:06:02
オリジナル
581 人が閲覧しました

Java サーブレットでは、国際化されたリソース バンドルとロケール クラスを使用して国際化が実現されます。具体的な手順は次のとおりです。 国際化されたリソース バンドル (.properties ファイル) を作成して、さまざまな言語 (_言語コード) と国 (_country) を保存します。コード)翻訳されたテキスト。現在のロケール設定を取得するには、Locale クラスを使用します。 ResourceBundle.getBundle を介して正しいリソース バンドルをロードします。 Bundle.getString を使用して、対応するキーの翻訳されたテキストを取得します。 Locale.setDefault を介してデフォルトのロケールを設定します。 request.getLocale を使用して、要求されたロケールを取得します。 EL 式を使用して、翻訳されたテキストをビューに表示します。

Java Servlet如何支持国际化?

Java サーブレットで国際化をサポートする方法

はじめに

国際化とはアプリケーションが複数の言語と文化をサポートするようにするプロセス。 Java サーブレットでは、国際化されたリソース バンドルと Locale クラスを使用して国際化が実現されます。

国際化リソース バンドル

国際化リソース バンドルは、さまざまな言語のテキストの翻訳された文字列のセットです。これらは、.properties ファイルの形式で保存され、ファイル名は [ベース ファイル名]_[言語コード]_[国コード].properties の形式になります。たとえば、英語のテキストを含むリソース バンドルには、messages_en_GB.properties という名前を付けることができます。

リソース バンドルの作成

リソース バンドルを作成するには、次の手順に従います。

  1. .properties# # を作成します。 # 書類。
  2. 次の構文を使用して、各文字列のキーと値のペアを追加します。
  3. KEY=VALUE
    ログイン後にコピー
    適切なファイル名を使用して、さまざまな言語および国用の追加のリソース バンドルを作成します。

英語とスペイン語のテキストを含むリソース バンドルの例を次に示します:

// messages_en_GB.properties
welcome=Welcome
username=Username

// messages_es_ES.properties
welcome=Bienvenido
username=Nombre de usuario
ログイン後にコピー

Using Locale クラス

Locale クラスは、特定の言語と国の設定を表します。リソース バンドルから正しく翻訳された文字列を取得するために使用されます。

リソース バンドルの読み取り

リソース バンドルを読み取るには、次のコードを使用します:

ResourceBundle bundle = ResourceBundle.getBundle("messages", Locale.getDefault());
ログイン後にコピー

これは、現在の

と同じようにロードされます。 Locale 一致するリソース バンドル。

翻訳された文字列の取得

翻訳された文字列を取得するには、次のコードを使用します:

String welcomeText = bundle.getString("welcome");
ログイン後にコピー

これにより、指定されたキーに対応する文字列が取得されます。翻訳された文字列。

実際のケース

1. サーブレットの初期化

サーブレットの初期化メソッドでは、デフォルトの

を設定できます。ロケール :

@Override
public void init() {
    Locale defaultLocale = Locale.getDefault();
    Locale.setDefault(defaultLocale);
}
ログイン後にコピー

2. リクエストに応答する

リクエストに応答すると、リクエストされた

ロケールに基づいて翻訳された文字列を取得できます。 :

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
    ResourceBundle bundle = ResourceBundle.getBundle("messages", request.getLocale());
    request.setAttribute("welcomeText", bundle.getString("welcome"));
}
ログイン後にコピー

3. ビューの表示

JSP ビューでは、EL 式を使用して翻訳された文字列を表示できます:

<h1>${welcomeText}</h1>
ログイン後にコピー
This 「ようこそ」テキストをさまざまな言語で表示するに表示されます。

以上がJava サーブレットは国際化をどのようにサポートしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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