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;