目次
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/にアクセスすると、プロパティファイルから読み込んだ値が表示されます。
<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
この記事は役に立ちましたか?