SpringBoot notas de aprendizagem @Configuration papel, uso e instruções

documentos de referência: https://blog.csdn.net/BinshaoNo_1/article/details/85005935?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

https://blog.csdn.net/lujiangui/article/details/82053790?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

Primavera para a configuração Java é alcançado (aqui referem-se a Bowen através @Configuration e @Bean duas notas https://blog.csdn.net/qq_41623154/article/details/104654953 , injeção de propriedade sobre springboot, não são detalhados explicar):

@Configuration pode atuar em qualquer classe que representa a classe é uma configuração de classe, de fato equivalente a um arquivo de configuração XML.

ato @Bean no método, na verdade, feijão arquivo de configuração XML equivalente, representa a criação de um feijão, tipo de valor de retorno representa o tipo de feijão, nome do método do feijão indica que o método de identificação.

Em Spring3.0, @ Configuração arranjado para definição de classes, o que corresponde ao arquivo de configuração XML no projeto springboot para substituir arquivo de configuração XML. classe interna anotada com um ou mais métodos de anotações @Bean, estes métodos irão ser digitalizada ou classe AnnotationConfigWebApplicationContext AnnotationConfigApplicationContext, e usado para construir recipientes bea mola de inicialização definido.

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    @Bean
    public LocaleResolver localeResolver(){
        return new MyLocaleResolver();
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/","/index.html","/login","/userLogin","/static/**");
    }

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
        WebMvcConfigurer.super.addResourceHandlers(registry);
    }

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        /*设置默认跳转的请求视图*/
        registry.addViewController("/").setViewName("login");
        registry.addViewController("/index.html").setViewName("login");
        registry.addViewController("/login").setViewName("login");
        registry.addViewController("/main.html").setViewName("main");
    }


}

Precauções: @Configuration classe de configuração anotação tem os seguintes requisitos:

  1. classe de configuração é final não;
  2. classe de configuração não pode ser classe anônima;
  3. classe de configuração classe aninhada deve ser estático;

@Configuration marcado na classe, tal como uma mola correspondente para o ficheiro de configuração XML <beans>, como função: uma mola disposta recipiente (contexto de aplicação)

resumo

@Configuation equivalente a <Beans> </ beans>

 @Bean equivalente a <bean> </ bean>

 @ComponentScan 等价 于 <context: base-pacote de componente-scan =”com.study.mapper” />

Publicado 33 artigos originais · ganhou elogios 5 · vê 20000 +

Acho que você gosta

Origin blog.csdn.net/qq_41623154/article/details/104742949
Recomendado
Clasificación