Spring Boot プロパティの文字化けを解決する方法
Spring Bootにおいて、プロパティファイルの文字化けの問題は以下のように解決できます。
- properties ファイルは UTF-8 で保存します。
- スタートアップクラスに以下コードを追加して、プロパティファイルのエンコード形式をUTF-8に指定する。
- @SpringBootApplication
public class Application {public static void main(String[] args) {
// propertiesファイルの文字コードをUTF-8に設定
System.setProperty(“file.encoding”, “UTF-8”);SpringApplication.run(Application.class, args);
}
} - 設定ファイルでは、Unicodeエンコードで日本語文字を表します。例えば、日本語文字「こんにちは」を「\u4f60\u597d」と表します。
- 私の財産=あなたのために
- IntelliJ IDEAを使っている場合は、propertiesファイルを編集する際にファイルのエンコーディングをUTF-8に設定できます。IDEの右下隅に現在のファイルのエンコーディング形式が表示されるので、クリックして「UTF-8」を選択します。
- それでも解決できない場合は、`@PropertySource` アノテーションでプロパティファイルの文字化けを解決できます。たとえば次のとおりです。
- @SpringBootApplication
@PropertySource(value = { “classpath:application.properties” }, encoding = “UTF-8”)
public class Application {public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
} - Spring Boot がプロパティファイルの日本語文字を適切に読み込み、解析できるようにします。