日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

SpringBoot的@SpringBootApplication注解和其他几个注解

發布時間:2024/2/28 javascript 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SpringBoot的@SpringBootApplication注解和其他几个注解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自?https://blog.csdn.net/zzzgd_666/article/details/80310840

首先,我們來看看@SpringBootApplication注解代碼,如下代碼,它分別繼承了3個注解

1、@EnableAutoConfiguration 2、@ComponentScan 3、@SpringBootConfiguration
  • ?
@Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @SpringBootConfiguration @EnableAutoConfiguration @ComponentScan(excludeFilters = {@Filter(type = FilterType.CUSTOM,classes = {TypeExcludeFilter.class} ), @Filter(type = FilterType.CUSTOM,classes = {AutoConfigurationExcludeFilter.class} )} ) public @interface SpringBootApplication { //..... }
  • ?

所以它同時具備了@ComponentScan、@EnableAutoConfiguration的功能。

很多Spring Boot開發者總是使用 @Configuration , @EnableAutoConfiguration 和 @ComponentScan 注解他們的main類。 由于這些注解被如此頻繁地一塊使用(特別是你遵循以上最佳實踐時) , Spring Boot提供一個方便的 @SpringBootApplication 選擇。該 @SpringBootApplication 注解等價于以默認屬性使用 @Configuration , @EnableAutoConfiguration 和 @ComponentScan 。

main應用類的位置

一般來說, main應用類應該放在其他類上面的根包(root package) 中,此時@ComonentScan注解不需要配置basePackage屬性,這個包下的所有子包和子類都會被掃描。

下面是一個典型的結構:

cn+- zgd+- project+- Application.java|+- domain| +- Customer.java| +- CustomerRepository.java|+- service| +- CustomerService.java|+- web+- CustomerController.java
  • 1
  • ?

@EnableAutoConfiguration

這個注解是Spring應用程序上下文的自動配置,嘗試猜測和配置您可能需要的bean。自動配置類通常基于類路徑和定義的bean應用。例如,如果你有 tomcat-embedded.jar在您的類路徑中,你可能會想要一個TomcatEmbeddedServletContainerFactory(除非你定義自己的EmbeddedServletContainerFactory bean)。

當然我們也可能不需要他自動配置,這時候需要用排除的方式:

@Configuration //exclude= {DataSourceAutoConfiguration.class} 通過排除屬性來禁止DataSourceAutoConfiguration的配置 @EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class}) @ComponentScan public class Application { .....
  • ?

Spring Beans和依賴注入

你可以自由地使用任何標準的Spring框架技術去定義beans和它們注入的依賴。 這里經常使用 @ComponentScan 注解搜索beans, 并結合 @Autowired 構造器注入。?
如果使用上面建議的結構組織代碼(將應用類放到根包下) , 你可以添加 @ComponentScan 注解而不需要任何參數。 你的所有應用程序組件(@Component , @Service , @Repository , @Controller 等) 將被自動注冊為Spring Beans。

總結

以上是生活随笔為你收集整理的SpringBoot的@SpringBootApplication注解和其他几个注解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。