国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

SpringBoot簡(jiǎn)單入門

BWrong / 3287人閱讀

摘要:接下來我們繼續(xù)看如果達(dá)成包,在加入如下配置然后通過打包,最后通過命令啟動(dòng)這樣,最簡(jiǎn)單的就完成了,但是對(duì)于一個(gè)大型項(xiàng)目,這是遠(yuǎn)遠(yuǎn)不夠的,的詳細(xì)操作可以參照官網(wǎng)。以上實(shí)例只是最簡(jiǎn)單的項(xiàng)目入門實(shí)例,后面會(huì)深入研究。

什么是Spring Boot

Spring Boot是由Pivotal團(tuán)隊(duì)提供的基于Spring的全新框架,其設(shè)計(jì)目的是為了簡(jiǎn)化Spring應(yīng)用的搭建和開發(fā)過程。該框架遵循“約定大于配置”原則,采用特定的方式進(jìn)行配置,從而使開發(fā)者無(wú)需定義大量的XML配置。通過這種方式,Spring Boot致力于在蓬勃發(fā)展的快速應(yīng)用開發(fā)領(lǐng)域成為領(lǐng)導(dǎo)者。

Spring Boot并不重復(fù)造輪子,而且在原有Spring的框架基礎(chǔ)上封裝了一層,并且它集成了一些類庫(kù),用于簡(jiǎn)化開發(fā)。換句話說,Spring Boot就是一個(gè)大容器。

幾張下面展示圖產(chǎn)品了官網(wǎng)上提供的彈簧引導(dǎo)所集成的所有類庫(kù):

Spring Boot官方推薦使用Maven或Gradle來構(gòu)建項(xiàng)目,本教程采用Maven。

第一個(gè)Spring Boot項(xiàng)目
大多數(shù)教程都是以Hello World入門,本教程也不例外,接下來,我們就來搭建一個(gè)最簡(jiǎn)單的Spring Boot項(xiàng)目。

首先創(chuàng)建一個(gè)Maven工程,請(qǐng)看下圖:

這里寫圖片描述

然后在pom.xml加入Spring Boot依賴:


org.springframework.boot
spring-boot-starter-parent
2.0.1.RELEASE



org.springframework.boot
spring-boot-starter-web

創(chuàng)建一個(gè)Controller類HelloController:

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class HelloController {

@RequestMapping("hello")
String hello() {
return "Hello World!";
}

public static void main(String[] args) {
SpringApplication.run(HelloController.class, args);
}
}

運(yùn)行主方法,Spring Boot默認(rèn)會(huì)啟動(dòng)自帶的Tomcat容器,啟動(dòng)成功后,瀏覽器訪問:http:// localhost:8080 / hello,則會(huì)看到下圖:

這里寫圖片描述

我們可以注意到,沒有寫任何的配置文件,更沒有顯示的使用任何容器,它是如何啟動(dòng)程序的呢,具體原理我將在第3課中具體分析。

這里我們可以初步分析出,Spring Boot提供了默認(rèn)的配置,在啟動(dòng)類里加入@SpringBootApplication注解,則這個(gè)類就是整個(gè)應(yīng)用程序的啟動(dòng)類。

屬性和yaml
Spring Boot整個(gè)應(yīng)用程序只有一個(gè)配置文件,那就是.properties或.yml文件。但是,在前面的示例代碼中,我們并沒有看到該配置文件,那是因?yàn)镾pring Boot對(duì)每個(gè)配置項(xiàng)都有默認(rèn)值。當(dāng)然,我們也可以添加配置文件,用以覆蓋其默認(rèn)值,這里以.properties文件為例,首先在資源下新建一個(gè)名為application.properties(注意:文件名必須是應(yīng)用)的文件,鍵入內(nèi)容為:

server.port=8081
server.servlet.context-path=/api

并且啟動(dòng)main方法,這時(shí)程序請(qǐng)求地址則變成了:http:// localhost:8081 / api / hello。

Spring Boot支持屬性和yaml兩種格式的文件,文件名分別對(duì)應(yīng)application.properties和application.yml,下面貼出yaml文件格式供大家參考:

server:
    port: 8080
    servlet:
        context-path: /api

可以看出屬性是以逗號(hào)隔開,而yaml則換行+ tab隔開,這里需要注意的是冒號(hào)后面必須空格,否則會(huì)報(bào)錯(cuò).yaml文件格式更清晰,更易讀,這里作者建議大家都采用yaml文件來配置。

本教程的所有配置均采用yaml文件。

打包,運(yùn)行
Spring Boot打包分為war和jar兩個(gè)格式,下面將分別演示如何構(gòu)建這兩種格式的啟動(dòng)包。

在pom.xml加入如下配置:

war

index


src/main/resources
true




org.springframework.boot
spring-boot-maven-plugin


maven-resources-plugin
2.5

UTF-8



org.apache.maven.plugins
maven-surefire-plugin
2.18.1

true



這個(gè)時(shí)候運(yùn)行mvn包就會(huì)生成war包,然后放到Tomcat當(dāng)中就能啟動(dòng),但是我們單純這樣配置在Tomcat是不能成功運(yùn)行的,會(huì)報(bào)錯(cuò),需要通過編碼指定Tomcat容器啟動(dòng),修改HelloController類:

 @RestController
    @SpringBootApplication
    public class HelloController extends SpringBootServletInitializer{
    
    @RequestMapping("hello")
    String hello() {
    return "Hello World!";
    }
    
    public static void main(String[] args) {
    SpringApplication.run(HelloController.class, args);
    }
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    return application.sources(Application.class);
    }
    
    }

這時(shí)再打包放到Tomcat,啟動(dòng)就不會(huì)報(bào)錯(cuò)了。

接下來我們繼續(xù)看如果達(dá)成jar包,在pom.xml加入如下配置:

jar

api


src/main/resources
true




org.springframework.boot
spring-boot-maven-plugin

true
com.lynn.yiyi.Application




repackage





maven-resources-plugin
2.5

UTF-8
true



org.apache.maven.plugins
maven-surefire-plugin
2.18.1

true



org.apache.maven.plugins
maven-compiler-plugin
2.3.2

1.8
1.8



然后通過mvn package打包,最后通過java命令啟動(dòng):

java -jar api.jar
這樣,最簡(jiǎn)單的Spring Boot就完成了,但是對(duì)于一個(gè)大型項(xiàng)目,這是遠(yuǎn)遠(yuǎn)不夠的,Spring Boot的詳細(xì)操作可以參照官網(wǎng)。

下面展示一個(gè)最基礎(chǔ)的企業(yè)級(jí)Spring Boot項(xiàng)目的結(jié)構(gòu):

其中,Application.java是程序的啟動(dòng)類,Startup.java是程序啟動(dòng)完成前執(zhí)行的類,WebConfig.java是配置類,所有bean注入,配置,攔截器注入等都放在這個(gè)類里面。

以上實(shí)例只是最簡(jiǎn)單的Spring Boot項(xiàng)目入門實(shí)例,后面會(huì)深入研究Spring Boot。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/76637.html

相關(guān)文章

  • Mac ox 下使用idea搭建springboot入門程序,啟動(dòng)成功,訪問404錯(cuò)誤!

    摘要:在創(chuàng)建好的空的中創(chuàng)建新的。其實(shí)到目前為止,正常情況下我們?nèi)腴T已經(jīng)搭建好了,只需執(zhí)行的入口就可以。例如使用類似上面的包結(jié)構(gòu)。代碼如下重新運(yùn)行一下程序,網(wǎng)址訪問后就會(huì)看到信息了。 記錄工作學(xué)習(xí)點(diǎn)點(diǎn)滴滴,希望對(duì)大家有幫助 問題描述 之前使用windows的idea環(huán)境自動(dòng)搭建springboot并沒有出現(xiàn)問題,所以覺得很簡(jiǎn)單,轉(zhuǎn)移的mac ox平臺(tái)想著自己也搭建一下springboot的微服...

    awokezhou 評(píng)論0 收藏0
  • SpringBoot基礎(chǔ)入門

    摘要:基礎(chǔ)入門篇簡(jiǎn)介可以基于輕松創(chuàng)建可以運(yùn)行的獨(dú)立的生產(chǎn)級(jí)的應(yīng)用程序。對(duì)平臺(tái)和第三方類庫(kù)我們有自己看法和意見約定大于配置。官網(wǎng)目前最新版本是我們接下來就在這個(gè)版本的基礎(chǔ)上面進(jìn)行學(xué)習(xí)。變成項(xiàng)目引入依賴。 SpringBoot基礎(chǔ)入門篇 簡(jiǎn)介 Spring Boot可以基于Spring輕松創(chuàng)建可以運(yùn)行的、獨(dú)立的、生產(chǎn)級(jí)的應(yīng)用程序。 對(duì)Spring平臺(tái)和第三方類庫(kù)我們有自己看法和意見(約定大于配置...

    Edison 評(píng)論0 收藏0
  • SpringBoot入門0x001:idea創(chuàng)建 SpringBoot 項(xiàng)目并運(yùn)行

    摘要:創(chuàng)建項(xiàng)目創(chuàng)建一個(gè)項(xiàng)目選擇填寫,這兩個(gè)可以組合成,一般是項(xiàng)目域名倒置,是項(xiàng)目名,然后由這兩個(gè)組合成主包名。等待初次導(dǎo)包結(jié)束查看創(chuàng)建一個(gè)最簡(jiǎn)單的服務(wù)并測(cè)試添加一個(gè)打開,并點(diǎn)擊運(yùn)行使用自帶服務(wù)自帶測(cè)試,或者其他任意工具,看到返回就成功了 0x001 創(chuàng)建項(xiàng)目 創(chuàng)建一個(gè)項(xiàng)目showImg(https://segmentfault.com/img/bVbeaIU?w=777&h=482); ...

    Miracle_lihb 評(píng)論0 收藏0
  • 【Java入門SpringBoot自動(dòng)配置原理

    摘要:作者譚淼一運(yùn)行原理的運(yùn)行是由注解提供的。完成自動(dòng)配置類。自動(dòng)配置類主要作用是的配置核心,它會(huì)寫在中,告知在啟動(dòng)時(shí)去讀取該類并根據(jù)該類的規(guī)則進(jìn)行配置。會(huì)檢測(cè)是否存在類類會(huì)查看是否開啟該自動(dòng)配置。 作者:譚淼 一、運(yùn)行原理 Spring Boot的運(yùn)行是由注解@EnableAutoConfiguration提供的。 @Target({ElementType.TYPE}) @Retentio...

    468122151 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<