springBoot新特性之注解篇

这些注解在spring3.0版本就有了,而且用的频率非常高。这里就此来记录一下

@Configuration

之前我们用xml的形式来配置ioc或者aop,但是以后都是零配置的时代,就是不需要xml的代码,那xml配置文件怎么办呢?就是用这个注解来声明的

@Configuration        //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
public class config(){

}

@Bean

用@bean这个注解来注入bean

@Configuration        //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
public class config(){
    @Bean
    public A getA(){
        return new A();    //这就相当于在xml配置文件中注册一个beanA
    }

    @Bean
    public C getC(){
        return new C(getB());    //这就相当于在xml配置文件中注册一个beanC,并且C依赖B
    }

    @Bean
    public B getB(){
        return new B();    //这就相当于在xml配置文件中注册一个beanB
    }
}

@ComponentScan

这个注解就相当与在xml文件中的<context : component-scan >
用来扫描配置指定的包。如果不指定包的话,spring就默认扫描这个注解所在类的包下面的文件

@propertySource与@propertySource

这个注解是加载配置文件的比如 *.properties文件

@Configuration        //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
@propertySource("classpath:1.properties") //可以加载多个配置文件
@propertySource("classpath:2.properties")
public class config(){

}

如果是低于java1.8版本的话只能用下面这种方法来加载多配置文件

@Configuration        //加上这个注解这个类就相当于是一个xml的配置文件,让spring扫描即可
@propertySources({
    @propertySource("classpath:1.properties") //可以加载多个配置文件
    @propertySource("classpath:2.properties")
})
public class config(){

}

@ConfigurationProperties(prefix = “”)

这个注解的作用是把yml文件中你自定义的值映射到类的字段中。比如

package com.imooc.dataobject;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * Created by 敲代码的卡卡罗特
 * on 2018/3/5 23:07.
 */
@Data
@Component
@ConfigurationProperties(prefix = "")
public class Date {
    private String xixi;
}

yml文件

xixi: lzh

这就可以了,这就已经注入好了。好屌有没有

发布了281 篇原创文章 · 获赞 50 · 访问量 45万+

猜你喜欢

转载自blog.csdn.net/lzh657083979/article/details/79424203
今日推荐