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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hello World探究

發(fā)布時(shí)間:2025/4/16 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hello World探究 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Hello World探究

1、POM文件

1、父項(xiàng)目

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.9.RELEASE</version> </parent>他的父項(xiàng)目是 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>1.5.9.RELEASE</version><relativePath>../../spring-boot-dependencies</relativePath> </parent> 他來真正管理Spring Boot應(yīng)用里面的所有依賴版本;

Spring Boot的版本仲裁中心;

以后我們導(dǎo)入依賴默認(rèn)是不需要寫版本;(沒有在dependencies里面管理的依賴自然需要聲明版本號(hào))


2、啟動(dòng)器

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency>

spring-boot-starter-==web==:

? spring-boot-starter:spring-boot場景啟動(dòng)器? ??幫我們導(dǎo)入了web模塊正常運(yùn)行所依賴的組件;

Spring Boot將所有的功能場景都抽取出來,做成一個(gè)個(gè)的starters(啟動(dòng)器),只需要在項(xiàng)目里面引入這些starter相關(guān)場景的所有依賴都會(huì)導(dǎo)入進(jìn)來。要用什么功能就導(dǎo)入什么場景的啟動(dòng)器



主程序類,主入口類

/*** @SpringBootApplication 來標(biāo)注一個(gè)主程序類,說明這是一個(gè)Spring Boot應(yīng)用*/ @SpringBootApplication public class HelloWorldMainApplication {public static void main(String[] args) {// Spring應(yīng)用啟動(dòng)起來SpringApplication.run(HelloWorldMainApplication.class,args);} }

@SpringBootApplication: Spring Boot應(yīng)用標(biāo)注在某個(gè)類上說明這個(gè)類是SpringBoot的主配置類,SpringBoot就應(yīng)該運(yùn)行這個(gè)類的main方法來啟動(dòng)SpringBoot應(yīng)用;


@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 {

@SpringBootConfiguration??Spring Boot的配置類;

? 標(biāo)注在某個(gè)類上,表示這是一個(gè)Spring Boot的配置類;

? @Configuration??配置類上來標(biāo)注這個(gè)注解;

? 配置類 ----- 配置文件配置類也是容器中的一個(gè)組件;@Component

@EnableAutoConfiguration:開啟自動(dòng)配置功能;

? 以前我們需要配置的東西,Spring Boot幫我們自動(dòng)配置;@EnableAutoConfiguration告訴SpringBoot開啟自動(dòng)配置功能;這樣自動(dòng)配置才能生效;


@AutoConfigurationPackage @Import(EnableAutoConfigurationImportSelector.class) public @interface EnableAutoConfiguration {

@AutoConfigurationPackage:自動(dòng)配置包

? @Import(AutoConfigurationPackages.Registrar.class):

? Spring的底層注解@Import給容器中導(dǎo)入一個(gè)組件導(dǎo)入的組件由AutoConfigurationPackages.Registrar.class

==將主配置類(@SpringBootApplication標(biāo)注的類)的所在包及下面所有子包里面的所有組件掃描到Spring容器;==

? @Import(EnableAutoConfigurationImportSelector.class)

? 給容器中導(dǎo)入組件?

? EnableAutoConfigurationImportSelector:導(dǎo)入哪些組件的選擇器;

? 將所有需要導(dǎo)入的組件以全類名的方式返回;這些組件就會(huì)被添加到容器中;

? 會(huì)給容器中導(dǎo)入非常多的自動(dòng)配置類(xxxAutoConfiguration);就是給容器中導(dǎo)入這個(gè)場景需要的所有組件,并配置好這些組件;

有了自動(dòng)配置類,免去了我們手動(dòng)編寫配置注入功能組件等的工作;

? SpringFactoriesLoader.loadFactoryNames(EnableAutoConfiguration.class,classLoader);

Spring Boot在啟動(dòng)的時(shí)候從類路徑下的META-INF/spring.factories中獲取EnableAutoConfiguration指定的值,將這些值作為自動(dòng)配置類導(dǎo)入到容器中,自動(dòng)配置類就生效,幫我們進(jìn)行自動(dòng)配置工作;==以前我們需要自己配置的東西,自動(dòng)配置類都幫我們;

J2EE的整體整合解決方案和自動(dòng)配置都在spring-boot-autoconfigure-1.5.9.RELEASE.jar

?

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的Hello World探究的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。