• javacofig几个常用注解


    1、问题描述

    javacofig使用注解来描述Bean配置的组件,记录几个常用的注解,以便后续回顾。

    2、问题说明

    (1)@Configuration

    在类上打上这一标签,表示这个类是配置类

    (2)@Bean

    bean的定义,相当于xml的

      
    
    • 1

    (3)@Import注解须知

    • @Import只能用在类上 ,@Import通过快速导入的方式实现把实例加入spring的IOC容器中

    • 加入IOC容器的方式有很多种,@Import注解可以用于导入第三方包 ,当然@Bean注解也可以,但是@Import注解快速导入的方式更加便捷

      启动类中加上@Enable**的,是用@import注解,加载到ioc容器中的。

    (4)@ImportResource

    相当于xml:

    
    
    • 1

    (5)@PropertySource

    spring 3.1开始引入,它是基于java config的注解,用于读取properties文件

    (6)@AliasFor

    表示别名,它可以添加到自定义注解的两个属性上,表示这两个属性互为别名。也就是说,这两个属性其实是同一个含义。

    public @interface Configuration {
       @AliasFor(annotation = Component.class)
       String value() default "";
    
    • 1
    • 2
    • 3

    @Controller等注解本质上也是@Component

    @SpringBootApplication注解,其实是三个注解的组合,分别是:

    (7)@SpringBootConfiguration

    @SpringBootConfiguration等同于@Configuration,带有spring的标志,是属于spring的一个配置类

    (8)@EnableAutoConfiguration

    @EnableAutoConfiguration 也是借助 @Import 的帮助,将所有符合自动配置条件的 bean 定义加载到 IoC 容器。

    (9) ComponentScan()

    相当于xml的,默认情况下就不需要配置@ComponentScan这个注解了。 因为Application类,在启动的时候,默认是加载和Application类所在同一个目录下的所有类,包括所有子目录下的类。


    更多信息请关注公众号:「软件老王」,关注不迷路,软件老王和他的IT朋友们,分享一些他们的技术见解和生活故事。

  • 相关阅读:
    【8.7】代码源 - 【抽卡】【LCM与GCD】
    Vue事件修饰符的使用
    塔罗分析笔记--权杖家族
    MySQL数据库的增删改查(进阶)
    消息中间件概述
    人工智能优势
    Cmake qt ,vtkDataArray.cxx.obj: File too big
    基于小波神经网络的信道关闭时间预测,基于ANN的信道OFF时间预测
    Qt 信号与槽
    同样是玩手机,有人变有钱了,有人变贫穷了?
  • 原文地址:https://blog.csdn.net/wjg8209/article/details/125938743