欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot四大神器之CLI的具體使用

 更新時(shí)間:2021年10月31日 16:49:17   作者:這個(gè)名字先用著  
本文主要介紹了Spring Boot四大神器之CLI的具體使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

1. Spring Boot CLI簡(jiǎn)介:

官網(wǎng)地址:
https://docs.spring.io/spring-boot/docs/current/reference/html/cli.html#cli.

安裝官網(wǎng)地址: https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started.html#getting-started.installing.cli.

Spring Boot CLI 是一個(gè)命令行工具,如果您想要快速開發(fā)spring應(yīng)用程序,您可以使用該工具。它可以讓你運(yùn)行Groovy腳本,這意味著你有一個(gè)熟悉的java語(yǔ)法,沒有這么多的樣板代碼。您也可以啟動(dòng)一個(gè)新項(xiàng)目或?yàn)樗帉懽约旱拿睢?/p>

Spring Boot CLI是一種快速開發(fā)Spring應(yīng)用的命令行界面。CLI就是Command Line Interface的簡(jiǎn)寫,CLI利用了Spring Boot的起步依賴和自動(dòng)配置,可以讓人們專注于代碼本身,而不用完成繁瑣的配置。實(shí)際上Spring Boot的本質(zhì)就是用來(lái)簡(jiǎn)化繁瑣的Spring配置,不過CLI的使用真的是讓開發(fā)Spring程序變得非常快速。

CLI可以檢測(cè)到代碼中使用的類,知道需要給Classpath中添加的哪些起步依賴才能讓程序運(yùn)行起來(lái)。而且當(dāng)添加完依賴之后就會(huì)完成自動(dòng)配置,確保啟用后DispatcherServlet和Spring MVC,這樣就可以響應(yīng)HTTP請(qǐng)求了。所以說想要用CLI來(lái)編寫一個(gè)Spring的“HelloWorld”是非??焖俚?。分別介紹一下Windows和Linux的安裝。

2. 安裝CLI:

四種安裝方法:這里我們使用通用的手動(dòng)安裝。

手動(dòng)安裝:

手動(dòng)安裝在Windows, Mac, Linux系統(tǒng)都可以使用
您可以從spring軟件存儲(chǔ)庫(kù)下載 Spring CLI 安裝包:

(1)下載:
widows版本:
spring-boot-cli-2.5.6-bin.zip:https://repo.spring.io/ui/native/release/org/springframework/boot/spring-boot-cli/2.5.6.

linux版本:
spring-boot-cli-2.5.6-bin.tar.gz:https://repo.spring.io/ui/native/release/org/springframework/boot/spring-boot-cli/2.5.6.

INSTALL.txt安裝文檔如下:

先決條件
-------------
Spring Boot CLI需要Java JDK v1.8或以上版本才能運(yùn)行。Groovy v $ {groovy.version}

打包為這個(gè)發(fā)行版的一部分,因此不需要安裝(忽略現(xiàn)有的Groovy安裝)。

CLI將使用它在路徑上找到的任何JDK,以檢查您是否有合適的JDK

你應(yīng)該運(yùn)行的版本:

java - version

或者,您可以設(shè)置JAVA_HOME環(huán)境變量以指向合適的JDK。

環(huán)境變量:(下載之后進(jìn)行解壓到一個(gè)目錄,然后將解壓后的bin目錄添加到Path環(huán)境變量即可。)

檢查你的安裝
--------------------------
測(cè)試命令行是否安裝成功,可以執(zhí)行以下命令:
spring --version

(2)解壓:

當(dāng)你完成需要的歸檔文件下載到你本地計(jì)算機(jī)后,解壓到c/d盤的不帶中文的目錄下。

在這里插入圖片描述

(3)配置系統(tǒng)環(huán)境變量:

然后將解壓后的bin目錄添加到Path環(huán)境變量即可:

在這里插入圖片描述

(4)測(cè)試是否安裝成功:
win+r后輸入cmd:出現(xiàn)windows控制臺(tái),輸入:spring --version

在這里插入圖片描述

3. 運(yùn)行Groovy腳本

您可以使用命令編譯和運(yùn)行 Groovy 源代碼。springboot CLI 是完全自成一體的,因此您不需要任何外部 Groovy 安裝。

在完成了Spring Boot CLI的安裝之后,我們來(lái)試試使用它來(lái)快速的構(gòu)建一個(gè)Spring Boot應(yīng)用,方法很簡(jiǎn)單,只需要如下操作:

第一步:新建一個(gè)Groovy腳本,hello.groovy,內(nèi)容如下:

@RestController
class ThisWillActuallyRun {
@RequestMapping("/")
String home() {
"Hello World!--------"
}
}

或者Java版本,hello.java文件內(nèi)容如下:

@RestController
public class Hello {
    @RequestMapping("/hello")
    public String hello() {
        return "Hello World Java!";
    }
}

如圖我的hello.groovy文件存放的位置:(在hello.groovy文件所在目錄下輸入cmd)

在這里插入圖片描述

第二步:使用spring命令運(yùn)行該Groovy腳本,具體如下:

要編譯和運(yùn)行應(yīng)用程序,鍵入以下命令:

spring run hello.groovy

在這里插入圖片描述

擴(kuò)展;
要將命令行參數(shù)傳遞給應(yīng)用程序,請(qǐng)使用將命令與"spring"命令參數(shù)分開,如下示例所示:–

spring run hello.groovy – --server.port=9000

要設(shè)置 JVM 命令行參數(shù),您可以使用環(huán)境變量,如下示例所示:JAVA_OPTS:

JAVA_OPTS=-Xmx1024m spring run hello.groovy

注意:當(dāng)在Windows上設(shè)置時(shí), 請(qǐng)務(wù)必引用整個(gè)指令,例如 。這樣做可以確保將值正確傳遞到流程中。JAVA_OPTSset “JAVA_OPTS=-Xms256m -Xmx2048m”

第三步:網(wǎng)頁(yè)測(cè)試訪問:http://localhost:8080/

在這里插入圖片描述

訪問controller成功;

測(cè)試java版本:http://localhost:8080/hello

在這里插入圖片描述

訪問controller成功;

4. CLI運(yùn)行原理說明:(CLI幫我們做了什么?)

(1)推斷"抓"依賴性:

標(biāo)準(zhǔn) Groovy 包含一個(gè)注釋,允許您聲明對(duì)第三方庫(kù)的依賴性。這種有用的技術(shù)允許Groovy下載jar的方式與maven或Gradle一樣,但無(wú)需您使用構(gòu)建工具@Grab

Spring Boot 進(jìn)一步擴(kuò)展了此技術(shù),并嘗試根據(jù)您的代碼推斷出哪些庫(kù)要"抓取"。例如,由于以前顯示的代碼使用注釋,因此springboot可抓取"tomcat"和"spring MVC"。WebApplication@RestController

(2)推斷"抓取"坐標(biāo):

springboot擴(kuò)展 Groovy 的標(biāo)準(zhǔn)支持,允許您指定沒有g(shù)roup或版本的依賴(例如)。這樣做會(huì)查閱 Spring Boot 的默認(rèn)依賴性元數(shù)據(jù),以推斷出該產(chǎn)品體的組和版本依賴。@Grab@Grab(‘freemarker')

(3)自動(dòng)主方法:

與等效的 Java 應(yīng)用程序不同,您不需要在腳本中包含一種方法。主方法是自動(dòng)創(chuàng)建的,自動(dòng)幫我們創(chuàng)建了如下代碼:

public static void main(String[] args)GroovySpringApplicationsource

(4)自定義依賴性管理:

默認(rèn)情況下,CLI 在解決依賴關(guān)系時(shí)使用所申報(bào)的依賴管理。額外的依賴管理,覆蓋默認(rèn)依賴管理,可以通過使用注釋進(jìn)行配置。注釋值應(yīng)指定一個(gè)或多個(gè) Maven BOM 的坐標(biāo):

spring-boot-dependencies@Grab@DependencyManagementBomgroupId:artifactId:version

例如,請(qǐng)考慮以下聲明:

@DependencyManagementBom(“com.example.custom-bom:1.0.0”)

當(dāng)您指定多個(gè) BOM 時(shí),它們將按您聲明它們的順序應(yīng)用,如下示例所示:

@DependencyManagementBom([
    "com.example.custom-bom:1.0.0",
    "com.example.another-bom:1.0.0"])

到此這篇關(guān)于Spring Boot四大神器之CLI的具體使用的文章就介紹到這了,更多相關(guān)Spring Boot CLI內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中正則表達(dá)式的使用和詳解(下)

    Java中正則表達(dá)式的使用和詳解(下)

    這篇文章主要介紹了Java正則表達(dá)式的使用和詳解(下)的相關(guān)資料,包括常用正則表達(dá)式和正則表達(dá)式語(yǔ)法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的的朋友參考下吧
    2017-04-04
  • Spring?AOP底層機(jī)制之代理模式

    Spring?AOP底層機(jī)制之代理模式

    如何實(shí)現(xiàn)在不修改源碼的基礎(chǔ)上實(shí)現(xiàn)代碼功能的增強(qiáng)呢?spring為我們提供了代理模式。所謂的代理模式通俗來(lái)說就是一個(gè)中介,它給某一個(gè)對(duì)象提供一個(gè)代理對(duì)象,并由代理對(duì)象控制原對(duì)象的引用,從而實(shí)現(xiàn)在不修改源碼的基礎(chǔ)上實(shí)現(xiàn)代碼功能的增強(qiáng)
    2022-08-08
  • 淺析 ArrayList 和 LinkedList 有什么區(qū)別

    淺析 ArrayList 和 LinkedList 有什么區(qū)別

    ArrayList 和 LinkedList 有什么區(qū)別,是面試官非常喜歡問的一個(gè)問題。今天通過本文給大家詳細(xì)介紹下,感興趣的朋友跟隨小編一起看看吧
    2020-10-10
  • 基于@MapperScan和@ComponentScan的使用區(qū)別

    基于@MapperScan和@ComponentScan的使用區(qū)別

    這篇文章主要介紹了@MapperScan和@ComponentScan的使用區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 基于LinkedHashMap實(shí)現(xiàn)LRU緩存

    基于LinkedHashMap實(shí)現(xiàn)LRU緩存

    LinkedHashMap是Java集合中一個(gè)常用的容器,它繼承了HashMap, 是一個(gè)有序的Hash表。那么該如何基于LinkedHashMap實(shí)現(xiàn)一個(gè)LRU緩存呢?本文將介紹LinkedHashMap的實(shí)現(xiàn)原理,感興趣的同學(xué)可以參考一下
    2023-05-05
  • springboot用thymeleaf模板的paginate分頁(yè)完整代碼

    springboot用thymeleaf模板的paginate分頁(yè)完整代碼

    本文根據(jù)一個(gè)簡(jiǎn)單的user表為例,展示 springboot集成mybatis,再到前端分頁(yè)完整代碼,需要的朋友可以參考下
    2017-07-07
  • SpringBoot集成P6spy實(shí)現(xiàn)自定義SQL日志打印

    SpringBoot集成P6spy實(shí)現(xiàn)自定義SQL日志打印

    本文主要介紹了SpringBoot集成P6spy實(shí)現(xiàn)自定義SQL日志打印,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Java中使用JDBC操作數(shù)據(jù)庫(kù)簡(jiǎn)單實(shí)例

    Java中使用JDBC操作數(shù)據(jù)庫(kù)簡(jiǎn)單實(shí)例

    這篇文章主要介紹了Java中使用JDBC操作數(shù)據(jù)庫(kù)簡(jiǎn)單實(shí)例,本文以Mysql為例介紹使用Java JDBC操作數(shù)據(jù)庫(kù)的6個(gè)步驟,需要的朋友可以參考下
    2015-06-06
  • JDK1.7 Paths,Files類實(shí)現(xiàn)文件夾的復(fù)制與刪除的實(shí)例

    JDK1.7 Paths,Files類實(shí)現(xiàn)文件夾的復(fù)制與刪除的實(shí)例

    下面小編就為大家分享一篇JDK1.7 Paths,Files類實(shí)現(xiàn)文件夾的復(fù)制與刪除的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。以前跟隨小編過來(lái)看看吧
    2017-11-11
  • Java 8跳過本次循環(huán),繼續(xù)執(zhí)行以及跳出循環(huán),終止循環(huán)的代碼實(shí)例

    Java 8跳過本次循環(huán),繼續(xù)執(zhí)行以及跳出循環(huán),終止循環(huán)的代碼實(shí)例

    今天小編就為大家分享一篇關(guān)于Java 8跳過本次循環(huán),繼續(xù)執(zhí)行以及跳出循環(huán),終止循環(huán)的代碼實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10

最新評(píng)論