问题:
在国际化过程中,自定义了localeResolver,但不生效
分析:
查看运行过程中容器中的bean,发现了MylocalResolver,说明已经注入了容器

继续分析springboot帮我们自动配置localeResolver的方法
@Bean
@ConditionalOnMissingBean
@ConditionalOnProperty(
prefix = "spring.mvc",
name = {"locale"}
)
public LocaleResolver localeResolver() {
if (this.mvcProperties.getLocaleResolver() == org.springframework.boot.autoconfigure.web.servlet.WebMvcProperties.LocaleResolver.FIXED) {
return new FixedLocaleResolver(this.mvcProperties.getLocale());
} else {
AcceptHeaderLocaleResolver localeResolver = new AcceptHeaderLocaleResolver();
localeResolver.setDefaultLocale(this.mvcProperties.getLocale());
re

在SpringBoot的国际化过程中遇到自定义localeResolver不生效的问题。通过检查,发现在容器中有MylocalResolver Bean,表明已成功注入。深入分析发现,由于自动配置的localeResolver方法名不匹配,导致SpringBoot的默认配置仍然生效。解决方案是将自定义的localeResolver方法名改为'localResolver',以避免SpringBoot的自动配置冲突。
最低0.47元/天 解锁文章
224

被折叠的 条评论
为什么被折叠?



