目次
Spring Bootでメッセージをプロパティファイルで管理する方法
Javaの人気フレームワークである「Spring Boot」を使用して、プロパティファイルで値(メッセージ)を管理する方法を紹介します。
スポンサーリンク
1. プロパティファイルの作成
src.main.resources配下にmessages.propertiesファイルを作成します。
※Springのデフォルトがsrc.main.resources配下です。
[messages.properties]
hello=Hello World!!
2. プロパティファイルの読み込み
プロパティファイルの読み込みは「MessageSource」を利用します。
[HelloWorldController]
package com.example.demo.controller; import java.util.Locale; import org.springframework.context.MessageSource; /** * HelloWorld Controller */ @Controller public class HelloWorldController { /** * メッセージ管理 */ @Autowired private MessageSource messageSource; /** * HelloWorld表示 * @param model Model * @return HelloWorld表示画面 */ @RequestMapping(value = "/", method = RequestMethod.GET) public String helloWorld(Model model) { model.addAttribute("message",messageSource.getMessage("hello", new String[] {}, Locale.getDefault())); return "index"; } }
3. 動作確認
HTMLを作成しhttp://localhost:8080/にアクセスすると、プロパティファイルから読み込んだ値が表示されます。
[index.html]
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"> <head> <title>Hello</title> <meta charset="utf-8" /> </head> <body> <h1>第一章 Spring Boot+Thymeleaf で”Hello World”を作成する</h1> <h2><span th:text="${message}"></span></h2> </body> </html>
プロパティファイルに動的パラメータを設定する方法
プロパティファイルに動的パラメータが入る場所の指定をします。指定方法は{数値}の形式で指定します。※数値は0から順番に設定
[messages.properties]
hello.param={0}Hello World{1}!!
プロパティファイルの読み込み処理「messageSource.getMessag」の第二引数の配列に動的パラメータの値を設定します。
[HelloWorldController]
messageSource.getMessage("hello.param", new String[] {"動的パラメータ1","動的パラメータ2"}, Locale.getDefault()));
先ほどと同じようにhttp://localhost:8080/にアクセスすると、プロパティファイルから読み込んだ値が表示されます。
helpful
この記事は役に立ちましたか?