• Spring详解(二)------注解配置IOC


    @Configuration:告诉Spring这是一个配置类

     @Bean("person")-->作用于方法:给容器中注册一个Bean;类型为返回值的类型

    @ComponentScans:配置要一组扫描的包的包扫描器

    @ComponentScan:配置要扫描的包的包扫描器

    //excludeFilters = Filter[] :指定扫描的时候按照什么规则排除那些组件
    
    //includeFilters = Filter[] :指定扫描的时候只需要包含哪些组件
    
    //FilterType.ANNOTATION:按照注解
    
    //FilterType.ASSIGNABLE_TYPE:按照给定的类型;
    
    //FilterType.ASPECTJ:使用ASPECTJ表达式
    
    //FilterType.REGEX:使用正则指定
    
    //FilterType.CUSTOM:使用自定义规则

     @Scope:配置bean的作用域

    //prototype:多实例的:获取的时候才会调用方法创建对象,IOC容器启动时不会调用
    
    //singleton:单实例的(默认值):ioc容器启动会调用方法创建对象放到ioc容器中。
    
    //request:同一次请求创建一个实例
    
    //session:同一个session创建一个实例

     @Lazy:作用于单例bean,容器启动不创建对象。第一次使用Bean初始化;

     @Conditional({Condition}) : 按照一定的条件进行判断,满足则在容器中注册

    //spring框架还提供了很多@Condition给我们用,当然总结用语哪种好理解,看给位读者喽
    @ConditionalOnBean(仅仅在当前上下文中存在某个对象时,才会实例化一Bean)
    @ConditionalOnClass(某个class位于类路径上,才会实例化一个Bean)
    @ConditionalOnExpression(当表达式为true的时候,才会实例化一个Bean)
    @ConditionalOnMissingBean(仅仅在当前上下文中不存在某个对象时,才会实例化一个Bean)
    @ConditionalOnMissingClass(某个class类路径上不存在的时候,才会实例化一个Bean)
    @ConditionalOnNotWebApplication(不是web应用)

     条件必须继承Condition接口,实现过滤的的方法

     @Import(要导入到容器中的组件);容器中就会自动注册这个组件,id默认是全类名

     ImportSelector:返回需要导入的组件的全类名数组;

     ImportBeanDefinitionRegistrar:手动注册bean到容器中

  • 相关阅读:
    Hibernate框架—简介
    ooad单例模式-Singleton
    About-JavaOOAD
    win10内置ubuntu,mysql完美清理,并安装
    VUE关于对象动态添加属性无法双向绑定问题
    正则留档
    centos下tomcat中文路径不识别
    web服务器解释html-include
    rose
    聊天框突出箭头
  • 原文地址:https://www.cnblogs.com/deityjian/p/11481976.html
Copyright © 2020-2023  润新知