1. 程式人生 > >SpringBoot(二):SpringBoot常用註解介紹

SpringBoot(二):SpringBoot常用註解介紹

@SpringBootApplication

package com.lpl.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringbootApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootApplication.class, args);
    }
}

@SpringBootApplication註解是Spring Boot的核心註解,它其實是一個組合註解:
這裡寫圖片描述
該註解主要組合了以下註解:

@SpringBootConfiguration:

這是Spring Boot專案的配置註解,這也是一個組合註解,它包含了@Configuration註解,在Spring Boot專案中推薦使用@ SpringBootConfiguration替代@Configuration
這裡寫圖片描述

@Configuration

提到@Configuration就要提到他的搭檔@Bean。SpringBoot提倡基於java的配置,使用這兩個註解就可以建立一個簡單的spring配置類,@Configuration可以用來替代相應的xml配置檔案。可以說就是替代原來的xml檔案。@Bean就是xml中的每一個bean。

@EnableAutoConfiguration:

啟用自動配置,該註解會使Spring Boot根據專案中依賴的jar包自動配置專案的配置項:
如:我們添加了spring-boot-starter-web的依賴,專案中也就會引入SpringMVC的依賴,Spring Boot就會自動配置tomcat和SpringMVC
這裡寫圖片描述
如果我們不需要Spring Boot自動配置,想關閉某一項的自動配置,該如何設定呢?
比如:我們不想自動配置Redis,想手動配置,就可以使用以下註解進行關閉
這裡寫圖片描述

@ComponentScan

預設掃描@SpringBootApplication所在類的同級目錄以及它的子目錄
所以我們的啟動類一般放在專案包的根目錄,這樣就能掃描到所有包下的配置

@ImportRecourse

SpringBoot提倡零配置,即無xml配置,但是在實際專案中,可能有一些特殊要求你必須使用xml檔案,這時候我們可以用@ImportRecourse註解來載入xml的配置檔案。
如:@ImportRecourse({“classpath:config/mybatis.xml,confco/test.xml”}) 來載入mybatis的一些配置。

@PropertySource

@PropertySource用來載入properies檔案。

@Value

載入properties檔案中的value值

@Configuration
@PropertySource("classpath:config/redis.properties")
public class RedisConfig {

    @Value("${redis.hostName}")
    private String hostName;

    @Value("${redis.port}")
    private Integer port;

    @Value("${redis.password}")
    private String password;

    @Value("${redis.sentinel.host1}")
    private String senHost1;

    @Value("${redis.sentinel.port1}")
    private Integer senPort1;