最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot之核心依賴和自動(dòng)配置方式

 更新時(shí)間:2023年06月26日 10:39:40   作者:王嘯tr1912  
這篇文章主要介紹了SpringBoot之核心依賴和自動(dòng)配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

之前介紹了springboot是有多么的好,那么,我們現(xiàn)在通過(guò)一個(gè)小demo來(lái)看他是有多么的強(qiáng)大!

一、核心pom引入

我們可以知道一般的項(xiàng)目引入了的基本包和spring一些連接池,再加上幾個(gè)配置文件還有應(yīng)用服務(wù)器(或者web服務(wù)器),就可以直接運(yùn)行起來(lái)了。

那么springboot要如何做呢?

首先就是核心依賴了:

<parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>1.5.2.RELEASE</version>
</parent>

這個(gè)parent是springboot最最核心的引入,所有的配置都在里面,并且是springboot項(xiàng)目必須引入的。

當(dāng)然現(xiàn)在都是web項(xiàng)目居多,我們還需要引入一個(gè)需要的依賴:

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

然后可以的話還可以引入一個(gè)插件:

<plugin>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

引入這些東西之后,我們可以在一個(gè)包中新建一個(gè)類,然后寫(xiě)入以下代碼:

@Controller
@SpringBootApplication
@Configuration
public class HelloApplication {
    @RequestMapping("hello")
    @ResponseBody
    public String hello(){
        return "hello world!";
    }
    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class, args);
    }
}

之后直接用javaApplication 的run方式,我們就可以直接將springboot的這個(gè)項(xiàng)目run起來(lái),可以在控制臺(tái)看到:

然后我們?cè)跒g覽器中輸入:http://localhost:8080/hello

就可以看到如下頁(yè)面:

這樣,我們就啟動(dòng)了一個(gè)簡(jiǎn)單的springboot項(xiàng)目。

二、核心自動(dòng)配置

我們可以在項(xiàng)目中看到,其實(shí)我們就是寫(xiě)了一個(gè)類,為什么連tomcat都不用,就可以直接啟動(dòng)一個(gè)web程序呢?這一切都是從springboot的配置說(shuō)起。

還記得我們引入pom了一個(gè)spring-boot-starter-web了么,這個(gè)就是spring所依賴的web項(xiàng)目模板,我們可以在maven管理器的依賴中找到這些已經(jīng)默認(rèn)加載好的東西:

我們可以直觀的看到,tomcat,hibernate,還有一些web項(xiàng)目需要用的東西全部都引入到了項(xiàng)目中,在項(xiàng)目啟動(dòng)的時(shí)候就是調(diào)用的他們,然后我們就相當(dāng)于吧tomcat也啟動(dòng)了一樣的感覺(jué),為我們的開(kāi)發(fā)配置省了不少事情。

然后我們?cè)賮?lái)看我們寫(xiě)的這個(gè)類,為什么可以直接用web來(lái)啟動(dòng)呢,根據(jù)上一篇文章的介紹,java的配置方式起到了很強(qiáng)的作用,那就是我們可以利用注解去輕易的配置一些我們想要配置的東西,springboot就是利用了這一點(diǎn)。

我們可以看到我們的類上面除了java的@Configuration之外,還有一個(gè)是springboot的配置項(xiàng)@SpringBootApplication,這個(gè)注解的引入,就默認(rèn)為我們自動(dòng)的配置了一些常用的配置。

那么,它都自動(dòng)為我們配置了什么呢?我們可以找到library的jar包引入,找到一個(gè)springboot的autoconfigure來(lái)看一下:

我們展開(kāi)看一下會(huì)發(fā)現(xiàn)很多熟悉的東西:

是不是看到了很多熟悉的身影呢,我們可以在每個(gè)包下面都找到一個(gè)帶有AutoConfigure的類,這就是用java配置方式寫(xiě)的默認(rèn)配置:

當(dāng)然,這些都是默認(rèn)的配置,我們?nèi)绻胍约号渲靡粋€(gè)組件要怎么把默認(rèn)的配置取消呢?

其實(shí)很簡(jiǎn)單,因?yàn)槊總€(gè)springboot項(xiàng)目都必須有一個(gè)核心的帶有@SpringBootApplication注解的類作為入口,所以我們只需要在這個(gè)注解上消除這個(gè)配置類的引入就可以了,

例如:

@Controller
@SpringBootApplication(exclude = {MongoAutoConfiguration.class, KafkaAutoConfiguration.class})
@Configuration
public class HelloApplication {
    @RequestMapping("hello")
    @ResponseBody
    public String hello(){
        return "hello world!";
    }
    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class, args);
    }
}

通過(guò)這樣用exclude的方式就把mongo和kafka的自動(dòng)配置去掉了,我們就可以自己進(jìn)行配置了。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MybatisPlus多表查詢及分頁(yè)查詢完整代碼

    MybatisPlus多表查詢及分頁(yè)查詢完整代碼

    這篇文章主要介紹了MybatisPlus多表查詢及分頁(yè)查詢完整代碼,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • java格式化date成字符串的詳細(xì)方法和示例

    java格式化date成字符串的詳細(xì)方法和示例

    在Java編程中,字符串格式化是一項(xiàng)基本且重要的技能,這篇文章主要介紹了java格式化date成字符串的詳細(xì)方法和示例,文中通過(guò)代碼?介紹的非常詳細(xì),需要的朋友可以參考下
    2025-09-09
  • Java讀取properties文件之中文亂碼問(wèn)題及解決

    Java讀取properties文件之中文亂碼問(wèn)題及解決

    這篇文章主要介紹了Java讀取properties文件之中文亂碼問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • SpringBoot從繁至簡(jiǎn)的框架基礎(chǔ)教程

    SpringBoot從繁至簡(jiǎn)的框架基礎(chǔ)教程

    Spring Boot是由Pivotal團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。該框架使用了特定的方式來(lái)進(jìn)行配置,從而使開(kāi)發(fā)人員不再需要定義樣板化的配置
    2022-10-10
  • SpringBoot整合ip2region實(shí)現(xiàn)使用ip監(jiān)控用戶訪問(wèn)城市的詳細(xì)過(guò)程

    SpringBoot整合ip2region實(shí)現(xiàn)使用ip監(jiān)控用戶訪問(wèn)城市的詳細(xì)過(guò)程

    這篇文章主要介紹了SpringBoot整合ip2region實(shí)現(xiàn)使用ip監(jiān)控用戶訪問(wèn)城市,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • idea創(chuàng)建SpringBoot項(xiàng)目及注解配置相關(guān)應(yīng)用小結(jié)

    idea創(chuàng)建SpringBoot項(xiàng)目及注解配置相關(guān)應(yīng)用小結(jié)

    Spring Boot是Spring社區(qū)發(fā)布的一個(gè)開(kāi)源項(xiàng)目,旨在幫助開(kāi)發(fā)者快速并且更簡(jiǎn)單的構(gòu)建項(xiàng)目,Spring Boot框架,其功能非常簡(jiǎn)單,便是幫助我們實(shí)現(xiàn)自動(dòng)配置,本文給大家介紹idea創(chuàng)建SpringBoot項(xiàng)目及注解配置相關(guān)應(yīng)用,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • 推薦兩款java開(kāi)發(fā)實(shí)用工具 hutool 和 lombok

    推薦兩款java開(kāi)發(fā)實(shí)用工具 hutool 和 lombok

    通過(guò)本文給大家推薦兩款java開(kāi)發(fā)實(shí)用工具 hutool 和 lombok,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-04-04
  • Mybatis plus中使用in查詢出錯(cuò)如何解決

    Mybatis plus中使用in查詢出錯(cuò)如何解決

    這篇文章主要介紹了Mybatis plus中使用in查詢出錯(cuò)的問(wèn)題及解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • java 非常好用的反射框架Reflections介紹

    java 非常好用的反射框架Reflections介紹

    這篇文章主要介紹了java 反射框架Reflections的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • Java中接口Set的特點(diǎn)及方法說(shuō)明

    Java中接口Set的特點(diǎn)及方法說(shuō)明

    這篇文章主要介紹了Java中接口Set的特點(diǎn)及方法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02

最新評(píng)論

许昌市| 新干县| 英德市| 唐山市| 元朗区| 泰来县| 遂溪县| 响水县| 眉山市| 韶山市| 格尔木市| 岳阳市| 乌兰县| 乌兰县| 迭部县| 新野县| 永丰县| 定南县| 凤凰县| 绵竹市| 棋牌| 东城区| 台前县| 太仓市| 大兴区| 托里县| 施甸县| 台前县| 元阳县| 高邑县| 浦北县| 武隆县| 临海市| 应用必备| 河西区| 鱼台县| 浙江省| 长沙县| 青铜峡市| 蓝田县| 万州区|