我想要显示包含不同语言的页面。我知道使用不同语言的消息属性,但这并不能解决我的问题。因为我的html页面有很多动态变量。我想要包含带语言选项的页面。如何在百里香中轻松解决这个问题?
答案 0 :(得分:0)
为了支持多种语言,我个人会使用Spring Framework的国际化:http://www.baeldung.com/spring-boot-internationalization - 使用百万富翁模板轻松工作
所以这是下面的解决方案:
@Controller
public class MvcWebConfig实现了WebMvcConfigurer {
/*THis locates all message files for html pages */
@Bean("messageSource")
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource =
new ReloadableResourceBundleMessageSource();
messageSource.setBasename("classpath:messages");
messageSource.setDefaultEncoding("UTF-8");
messageSource.setUseCodeAsDefaultMessage(true);
return messageSource;
}
/*Local Resolver is to set language preference */
@Bean
public LocaleResolver localeResolver() {
SessionLocaleResolver LR = new SessionLocaleResolver();
LR.setDefaultLocale(Locale.UK);
return LR;
}
/*overides language default with preference */
@Override
public void addInterceptors(InterceptorRegistry registry) {
LocaleChangeInterceptor localeChangeInterceptor = new LocaleChangeInterceptor();
localeChangeInterceptor.setParamName("lang");
registry.addInterceptor(localeChangeInterceptor);
}
}
然后在百里香中执行此操作
Language : <a href="?lang=uk">English</a> | <a href="?lang=gd">Gaelic</a>