[JAVA] Verwenden Sie die Nachrichteneigenschaften im Dateipfad für MessageSource im Frühjahrsstart

spring-boot kann als Nachrichteneigenschaft verwendet werden, indem eine Datei mit dem Namen `` `message.properties``` unter den Klassenpfad gestellt wird. Stattdessen, wenn Sie die Datei auf einem beliebigen Pfad platzieren möchten.

Vorbereitung

pom.xml


	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.1.RELEASE</version>
	</parent>

Code

Platzieren Sie die Nachrichteneigenschaftendatei in `` `files / mymessages.properties```.

files/mymessages.properties


hoge.message=foobar

Application.java


import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.MessageSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Lazy;
import org.springframework.context.support.ReloadableResourceBundleMessageSource;

@SpringBootApplication
public class Application implements CommandLineRunner {

	@Autowired
	@Lazy
	MessageSource messageSource;

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

	@Override
	public void run(String... args) throws Exception {
		String hoge = messageSource.getMessage("hoge.message", null, null);
		System.out.println(hoge);
	}

	@Bean
	public MessageSource messageSource() {
		ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
		messageSource.setBasename("file:files/mymessages");
		return messageSource;
	}
}

Umfragememo

Sie können einen anderen Namen als message.properties angeben oder mehrere Dateien in spring.messages.basename angeben. Hier können jedoch nur Dateien unter dem Klassenpfad angegeben werden. Selbst wenn Sie `file: files / mymessages``` schreiben, ist es` classpath *: file: files / mymessages.properties```.

Recommended Posts

Verwenden Sie die Nachrichteneigenschaften im Dateipfad für MessageSource im Frühjahrsstart
Verwenden Sie die Vervollständigung in Eclipse auf dem Mac
Verwenden Sie Docker in einer Proxy-Umgebung unter Ubuntu 20.04.1