Spring Boot 2.x 系列--註解
@ComponentScan 元件掃描. 會自動掃描指定包下的全部標有@Component的類,並註冊成bean,當然包括@Component下的子註解@Service,@Repository,@Controller。
舉個栗子: spring boot 中(Springboot會自動掃描啟動類同級包及其同級包的子包所有的註解。), 我的包名為 com.package1,cn.package2. 那麼我的Application啟動類在 com 下面.
問: 我 cn 下面的掃描不到怎麼辦.
問: 我只想掃描某個包下面的怎麼辦 答: 加註解寫上你要掃描的包名,多個用逗號隔開 , 看下面
@ComponentScan("com.package1,cn.package2")
@EntityScan 看到這個註解, 上面的會了 就知道了
@EnableAutoConfiguration 啟用自動配置(當然也可以使用exclude屬性禁用某些類),這就是Spring Boot自動配置實現的核心入口
@SpringBootApplication 組合註解相當於@Configuration
,@EnableAutoConfiguration
和
@ComponentScan 並具有他們的預設屬性值
@Entity 宣告實體
@Table 指定表名
@Version 該註釋可用於在實體Bean中新增樂觀鎖支援。
@Id 宣告此屬性為主鍵
@GeneratedValue 指定主鍵策略
@Column 宣告該屬性與資料庫欄位的對映關係。
@Configuration 一般配合 @Bean 使用. 聲明當前類是一個配置類,相當於一個Spring的XML配置檔案,與@Bean配合使用。
@Configuration VS @Component 共同點:都可以用於建立Bean; 不同點:實現原理不同,@Configuration基於CGlib代理實現,@Component基於反射實現; 使用場景:@Configuration用於全域性配置,比如資料庫相關配置,MVC相關配置等;業務Bean的配置使用註解配置(@Component,@Service,@Repository,@Controller)。
@Import 就是之前xml配置中的import標籤,可以用於依賴第三方包中bean的配置和載入.
@ImportResource 匯入xml檔案, 需要配合@Configuration註解一起使用,定義為配置類
@ImportResource({"classpath:some-context.xml","classpath:other-context.xml"})
....後期待增加