Java 在Spring中更改翻译处理

Java 在Spring中更改翻译处理,java,spring,configuration,internationalization,locale,Java,Spring,Configuration,Internationalization,Locale,很抱歉,如果代码不够,我正在试图弄清楚如何开始实现它 基本区域设置bean在WebMVCConfigureAdapter中设置 @Bean public LocaleResolver localeResolver() { SessionLocaleResolver resolver = new SessionLocaleResolver(); resolver.setDefaultLocale(new Locale("en")); return resolver; }

很抱歉,如果代码不够,我正在试图弄清楚如何开始实现它

基本区域设置bean在WebMVCConfigureAdapter中设置

@Bean
public LocaleResolver localeResolver() {
    SessionLocaleResolver resolver = new SessionLocaleResolver();
    resolver.setDefaultLocale(new Locale("en"));
    return resolver;
}

@Override
public void addInterceptors(InterceptorRegistry registry) {
    LocaleChangeInterceptor interceptor = new LocaleChangeInterceptor();
    interceptor.setParamName("language");
    registry.addInterceptor(interceptor);
}
默认功能是从不同的
[language].properties
文件读取翻译,我知道

我这里的问题是,我是否能在春季内改变这一点。因此,我不是通过文件读取翻译,而是通过自定义方法/功能读取翻译

我试着寻找一个解决办法,但没有遇到任何问题

例如,假设我在某个java类中有翻译(纯粹是示例外的),我不想通过该类读取文件,而希望通过该类读取文件,其中的内部功能类似于:

return TranslationConstants.getMap(translationKey, locale);
我之所以不在任何地方都这样使用它,是因为我不希望代码是这样的,所以我仍然可以使用视图渲染器以原生方式打印翻译(例如,thymeleaf中的
{value}

抱歉,如果这个问题令人困惑/误导。
也欢迎指向其他类似问题的指针,我只是找不到任何东西。

实现您自己的
MessageSource
包装您想要的功能。@M.Deinum这实际上帮助很大!非常感谢。