あらかじめ用意しておいたメッセージをそのまま表示する場合には、
#{○○} という形式のメッセージ式が便利です。これは、リソースとして用意されたメッセージから、そのときのロケールに応じてメッセージを取り出し表示します。
実際に簡単なサンプルを考えてみましょう。まず、
src/main/resourcesフォルダの中に以下の2つのファイルを作成して下さい。
「message.properties」標準で用いられるメッセージファイルです。以下の文を記述しておきます。
helo.msg=this is message!
「message_ja.properties」日本語のロケール用メッセージファイルです。日本語環境ではこちらが使われます。これも以下の文を書いておきます。
helo.msg=これがメッセージです!
これらのメッセージファイルの用意ができたら、テンプレートファイルに下のような形でタグを用意しておきましょう。
<p th:text="#{helo.msg}" />
これで実行しページにアクセスすると、
message_ja.propertiesに用意された
helo.msgのテキストが、
#{helo.msg}にはめ込まれて表示されます。英語環境でアクセスすると、
message.propertiesの
helo.msgの値が表示されるでしょう。
ここで注目すべきは、「メッセージの表示に、コントローラーが関わっていない」という点です。Thymeleafによるテンプレートに記述をしているだけで、Springのコードは何もありません。メッセージをテンプレートから直接扱えることがわかるでしょう。