springboot项目启动会报4个加载不到的debug提示,可改可不改

1. 因为启动的时候会报不能定位**解析器提示: Unable to locate LocaleResolver with name 'localeResolver': using default [org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver@17162122]
   有4个这样的--Resolver,(具体每个Resolver在下面注释有说明)要想不报这个加载提示,如果用不到这4个组件,考虑禁用: 即返回一个空组件

解决办法:

2, 新建一个配置类:

package com.aswatson.cdc.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.ThemeResolver;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver;

/**
 * 因为启动的时候会报提示: Unable to locate LocaleResolver with name 'localeResolver': using default [org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver@17162122]
 * 有4个这样的--Resolver,要想不报这个加载提示,如果用不到这4个组件,考虑禁用: 即返回一个空组件
 */
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    /**
     * LocaleResolver:用于解析客户端请求的 Locale(区域设置)信息,以便应用程序可以根据用户的地区设置提供相应的国际化支持。
     * 在这里,日志显示未能找到名为 'localeResolver' 的 LocaleResolver Bean,因此默认地使用了 AcceptHeaderLocaleResolver。

     * ThemeResolver:用于解析主题(Theme)信息,以便应用程序可以根据用户的主题偏好来渲染页面。
     * 日志显示未能找到名为 'themeResolver' 的 ThemeResolver Bean,因此默认地使用了 FixedThemeResolver。

     * RequestToViewNameTranslator:用于根据请求信息确定视图的名称。日志显示未能找到名为 'viewNameTranslator' 的 RequestToViewNameTranslator Bean,
     * 因此默认地使用了 DefaultRequestToViewNameTranslator。

     * FlashMapManager:用于管理 FlashMap,它是一种用于在请求之间传递数据的机制。日志显示未能找到名为 'flashMapManager' 的 FlashMapManager Bean,
     * 因此默认地使用了 SessionFlashMapManager。
     */
    // 禁用 LocaleResolver
    @Bean
    public AcceptHeaderLocaleResolver localeResolver() {
        // 返回一个空的AcceptHeaderLocaleResolver,该解析器将不会做任何事情,因此LocaleResolver将被禁用
        return new AcceptHeaderLocaleResolver();
    }

    // 禁用 ThemeResolver
    @Bean
    public ThemeResolver themeResolver() {
        // 返回一个空的ThemeResolver,该解析器将不会做任何事情,因此ThemeResolver将被禁用
        return new ThemeResolver() {
            @Override
            public String resolveThemeName(javax.servlet.http.HttpServletRequest request) {
                return null;
            }
            @Override
            public void setThemeName(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String themeName) {
                // Do nothing
            }
        };
    }

    // 禁用 RequestToViewNameTranslator
    @Bean
    public org.springframework.web.servlet.RequestToViewNameTranslator viewNameTranslator() {
        // 返回一个空的RequestToViewNameTranslator,该翻译器将不会做任何事情,因此RequestToViewNameTranslator将被禁用
        return request -> null;
    }

    // 禁用 FlashMapManager
    @Bean
    public org.springframework.web.servlet.FlashMapManager flashMapManager() {
        // 返回一个空的FlashMapManager,该管理器将不会做任何事情,因此FlashMapManager将被禁用
        return new org.springframework.web.servlet.support.SessionFlashMapManager();
    }

}

 3, 结果:

posted @ 2024-05-13 17:42  威兰达  阅读(55)  评论(0编辑  收藏  举报