java - Spring Boot中的MessageSource是否允许使用同一语言的多个属性文件?

标签 java spring spring-boot gradle internationalization

我想要一个依赖项jar,其中包含我们支持的主要语言的基本属性文件。因此, jar 内将是:

i18n/messages_en_US.properties
i18n/messages_fr.properties

这个 jar 是通过gradle编译依赖项拉入的:
compile(group: "com.mycompany", name: "localization", classifier: "lite", version: "1.0.0")

我希望开发人员也能够在他们的项目中添加他们可能需要的任何自定义消息。所以他们可能有:
resources/i18n/messages_en_US.properties
resources/i18n/messages_fr.properties

我希望MessageSource bean使用jar和开发人员项目中的组合。这可能吗?

我需要实现一个bean来实现它吗?

最佳答案

我认为您可以配置多个baseName,在AbstractResourceBasedMessageSource类中有一个方法setBasenames(String ... basenames),因此,当您为MessageSource bean设置baseNames时,您需要添加具有属性文件的所有路径。

关于java - Spring Boot中的MessageSource是否允许使用同一语言的多个属性文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47083373/

相关文章:

spring - JodaTime 和 BeanPropertySqlParameterSource

java - Web 应用程序无缘无故抛出 java.net.SocketException

java - 如何在 Android 上使用 cookie 发出 http 请求?

java - Comparator.nullsLast 不会避免 NullPointerException

javascript - 禁用 displayTag 中的超链接

Java Regex - 拆分逗号分隔列表,但排除括号内的逗号

java - 使用 @ImportResource 注释获取对 ApplicationContext 的引用?

java - 如何在 Spring REST Controller 中获取原始 JSON 主体?

spring-boot - 如何在 tomcat 9.0.14 的 Spring Boot REST 应用程序中同时启用 http1.1 和 http2.0

Spring 启动: Repository interface sql injection protection