springBoot的注解

@SpringBootApplication:用这个注解修饰的类是SpringBoot的启动类
它里面包含了
1.@Target:是元注解 作用:用来修饰注解的作用范围
此注解中有一个枚举类ElementType的数组变量value
说明这注解的作用范围可以定义在一个数组.
其中ElementType这个类中包含了一些属性元素:
1).TYPE:类/接口/枚举
2).FIELD:域
3).METHOD:方法
4).PARAMETER:参数
5).CONSTRUCTOR:构造器
6).LOCAL_VARIABLE:局部变量
7).ANNOTATION_TYPE:注解类型
8).PACKAGE:包
9).TYPE_PARAMETER:类型参数
10).TYPE_USE:任意类型
此注解标注为:ElementType.TYPE说明 这个注解只能用于类/接口/枚举
2.@Retention:这个注解是Java元注解,用于定义注解类被保留的时间长短,
这个注解内部只有一个枚举类
RetentionPolicy 它的变量是value 说明这个注解取值只能位该枚举类中的一个值
这个类的内部中有以下变量:
1).SOURCE:源文件
2).CLASS:class文件
3).RUNTIME:运行时
这个注解标注的是RUNTIME 说明此注解只在运行时有效
3.@Documented:这个注解同上也是Java的元注解它没有成员
它的作用就是标明当前的注解会被javac工具记录
4.@Inherited:这个注解也是Java的元注解,它的作用是被
这个注解标注是可以被继承的 什么意思?
举例:如果@SpringBootApplication这个注解被定义为
可继承的注解并且在主程序类中使用了这个注解 那么
主程序有一个子类位置使用@SpringBootApplication
当他要查找这个注解时,会自动向它的父类一直查找
直到被找到或者返回异常为止
5.@SpringBootConfiguration 这个注解通过底层代码可以了解到
它就是一个@Configuration注解的简单封装 这个两个注解的作用
相同 就是将使用这个注解的类标注为一个配置类
在@Configuration这个注解中还有三个注解:
1).@Bean:作用在方法或者类上 生成bean 加载到IOC容器中
在@Configuration注解主要作用在方法上,将配置的bean对象
加入到容器中
2).@Import:引入其他的配置类
3).@ImportResource:引入其他的配置文件(ps:一般都是xml)
6.@EnableAutoConfiguration:这个注解的作用是开启自动装配
这个注解中有两个比较重要的注解
1).@AutoConfigurationPackage:这个注解引入了AutoConfigurationPackages.Registrar
这个类这个类中的registerBeanDefinitions方法得到@SpringBootApplication注解标
注的类所在的包简而言之:这个注解的作用就是将主配置类所在的包下面所有的组件都
扫描到Spring容器里
2).@Import(org.springframework.boot.autoconfigure.AutoConfigurationImportSelector.class):
另外@EnableAutoConfiguration还引入了EnableAutoConfigurationImportSelector这
个类这个类是ImportSelector接口的实现,其中selectImports方法为它的核心方法
加载的是META-INF/spring.factories这个配置文件并加载这个配置文件中所有的类
7.@ComponetScan:这个注解在Spring框架中是一个很重要的注解
这个注解中有两个参数 basepackage和value 即 包名 用来定义要扫描的范围 扫描的
范围就是定义的包中的类以及子包中的类,在没指定参数是,默认是扫描当前类所在的包
及其子包的类.参数excludeFilters用于排除一些满足过滤器定义条件的类,它是一个数组
类型,说明可以指定多个不扫描的过滤器规则
在@SpringBootApplication中的@ComponentScan未定义扫描的范围参数,默认扫描的是主
程序类所在的包以及子包下的类,因此为了能使程序中的类都能被扫描到,我们应当将主
程序类定义在根路径下这样项目所需要用到的类都在主程序类所在的包和子包下,就不会存在有bean对象未被扫描的情况。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值