リソースバンドルは基本的にJSFから参照して呼び出すことが多いんですが、もちろんプログラム内からも呼び出すことはできます。
書き方も単純でリソースバンドルをインスタンス生成してメッセージのキーで呼び出してあげればOKです。
1 2 3 |
ResourceBundle resouce = ResourceBundle.getBundle(リソースバンドルの名称); String message = resouce.getString(メッセージのキー); return (!StringUtils.isBlank(message))? message:""; |
リソースバンドルの名称の部分はパスでなく、純粋にファイル名でOKです。言語の部分はいりません。(label_ja_JP.PropertiesならlabelだけでOK)
またメッセージの中に変数を入れておいて動的に変更することもできます。
例えば、メッセージの内容が「X件のレコードを登録しました」の場合、”%d件のレコードを登録しました”と記述し、
1 2 |
String message =" %d件のレコードを登録しました。" String.format(message,5); |
と書けば数値を含んだメッセージが出力されます。他の変数に関しても同じ考えです。
参考リンク