在 spring 引导中从 application.properties 配置国际化

Configure internationalization from application.properties in spring boot

我想知道我是否可以使用 application.properties 文件配置 spring 启动处理国际化的方式,而不是将其写入代码。

例如: 要定义一个 LocaleChangeInterceptor 我必须像这样声明一个 bean:

<bean id="localeChangeInterceptor"
      class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor">
    <property name="paramName" value="lang" />
</bean>

但是,查看文档中最常用的属性会发现只有 3 个值可以配置为国际化:

# INTERNATIONALIZATION (MessageSourceAutoConfiguration)
spring.messages.basename=messages
spring.messages.cache-seconds=-1
spring.messages.encoding=UTF-8

那么有什么办法可以实现吗?是否有关于如何将其映射到属性文件的约定?

is there a convention on how to map this to a properties file?

不,没有。它只是一个单独的 bean 定义,而且完全是可选的,所以我宁愿将其保留在 Java.