推薦一個 Spring Boot 快速開發(fā)利器
Spring boot CLI應(yīng)用程序使用groovy語言,通過這種方式,我們用最少的代碼行創(chuàng)建我們的應(yīng)用程序并啟動它。
1. Spring boot CLI應(yīng)用程序使用groovy。我們在應(yīng)用程序中創(chuàng)建groovy文件,為此我們不需要提供groovy的任何JAR依賴。Spring boot會自己配置groovy的JAR依賴項。
2. 在編寫groovy文件時,我們不需要寫導(dǎo)入語句,直到需要為止。在寫導(dǎo)入語句之前,我們應(yīng)該檢查我們是否得到導(dǎo)入錯誤。通過這種方式,我們盡可能地寫出最少的代碼行數(shù)。
@Controller注解,那么Spring Boot就會下載Spring Web應(yīng)用程序的JAR依賴項。@Grab注釋groovy功能。spring run命令來運行應(yīng)用程序,spring test命令來運行spring測試應(yīng)用程序。spring jar命令。spring initializer站點創(chuàng)建項目。spring shell命令的集成外殼。spring boot main()方法。它是由spring boot CLI自動提供的。手動安裝 使用SDKMAN進(jìn)行安裝! OSX自制軟件的安裝 MacPorts的安裝 命令行完成
步驟1:使用以下鏈接下載Spring boot CLI
http://repo.spring.io/release/org/springframework/boot/spring-boot-cli/1.4.3.RELEASE/spring-boot-cli-1.4.3.RELEASE-bin.zip
步驟2:解壓縮并保存在你系統(tǒng)的某個地方。假設(shè)我把它保存在如下位置。
C:\spring-1.4.3.RELEASE
SPRING_HOME的值為 C:\spring-1.4.3.RELEASEPATH的值為 C:\spring-1.4.3.RELEASE\bin

spring help run: 提供支持的命令的詳細(xì)信息。spring version: 提供Spring boot CLI的版本。
spring-app
???|
????--message.groovy??
????--hello.groovy?
????--tests.groovy
????--templates
?????????|
??????????--hello.html
????--static
????????|
?????????--index.html?
用 Spring Boot CLI 創(chuàng)建 Hello World 示例
@RestController
class?HelloController?{
????@RequestMapping("/home")
????String?home()?{
????????"Hello?World!"
????}
}?
1. 默認(rèn)的導(dǎo)入語句。在大多數(shù)情況下,我們不需要導(dǎo)入API。只有在不屬于默認(rèn)導(dǎo)入語句的情況下才可以導(dǎo)入。
2. spring boot沒有main方法。它將被自動創(chuàng)建。
spring?run?hello.groovy?
它下載所有的依賴性JAR。依賴性JAR的版本由我們所使用的Spring boot CLI的版本決定。下載JAR只在第一次時進(jìn)行。 依賴性JAR是由代碼中使用的類和注解定義的。由于我們使用的是 @RestController,所以會下載與Spring MVC和嵌入式Tomcat相關(guān)的JAR。現(xiàn)在它編譯代碼并在默認(rèn)端口8080上啟動嵌入式Tomcat服務(wù)器。

http://localhost:8080/home 來訪問該應(yīng)用程序。
server.port運行命令,如下所示。spring?run?hello.groovy?--?--server.port=8484?
--server.port一起。現(xiàn)在,嵌入式Tomcat將以8484端口啟動,為了運行應(yīng)用程序,我們需要使用http://localhost:8484/home來訪問。spring?run?*.groovy?
使用 @Grab 注釋
@Grab('spring-boot-starter-thymeleaf')
class?MessageController?{}?
@Controller
@Grab('spring-boot-starter-thymeleaf')
class?MessageController?{
????@RequestMapping("/msg")
?String?getMsg(Model?model)?{
?????String?msg?=?"Welcome?to?Everyone!";
????????model.addAttribute("message",?msg);
????????return?"hello";
????}
}?
HTML>
<html?xmlns:th="http://www.thymeleaf.org">
<head>?
????<title>Spring?Boot?CLI?Exampletitle>?
????<meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8"?/>
head>
<body>?
????<p?th:text="'Message:?'?+?${message}"?/>
body>
html>?
HTML>
<html>
<head>?
????<title>Spring?Boot?CLI?Exampletitle>?
????<meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8"?/>
head>
<body>
????<p>Click?to?get?<a?href="/msg">Messagea>?p>
body>
html>?
spring?run?*.groovy?
http://localhost:8080/@Controller @RestController @EnableWebMvc : 在這種情況下,Spring MVC和嵌入式Tomcat將被下載。 @EnableWebSecurity : Spring安全相關(guān)的JAR將被下載。 @EnableJms: JMS應(yīng)用程序相關(guān)的JAR將被下載。 @Test : 將會下載Spring測試應(yīng)用相關(guān)的JAR。
class?ApplicationTests?{
????@Test
????void?HelloAppTest()?{
????????assertEquals("Hello?World!",?new?HelloController().home())
????}
}?
spring?test?hello.groovy?tests.groovy?
spring test:Spring boot CLI命令,用于測試應(yīng)用程序。hello.groovy:需要測試的應(yīng)用程序文件。tests.groovy:測試文件,用于測試應(yīng)用程序文件。

使用 Spring Boot CLI 打包應(yīng)用程序
spring?jar?spring-app.jar?*.groovy?
spring-app.jar: 這是可執(zhí)行的JAR。spring-app.jar.original: 這是原JAR。
java?-jar?spring-app.jar?

public/**,?resources/**,?static/**,?templates/**,?META-INF/**
repository/**,?build/**,?target/**,?**/*.jar,?**/*.groovy?
--include,我們可以將默認(rèn)排除目錄添加到打包的目錄中。使用--exclude,我們可以刪除打包的目錄。有關(guān)更多詳細(xì)信息,我們可以按如下方式運行help命令。spring?help?jar?
使用 Spring Boot CLI 創(chuàng)建一個新項目
https://start.spring.io。假設(shè)我們想用thymleaf創(chuàng)建一個Web項目,那么我們將運行如下命令。spring?init?--dependencies=web,thymeleaf?my-app.zip?
spring-boot-starter-web
spring-boot-starter-thymeleaf?

spring?init?--build=gradle?--java-version=1.8?--dependencies=web,thymeleaf?--packaging=war?my-app.zip?
使用嵌入式 Shell
spring?shell?
$?version
$?test?hello.groovy?tests.groovy
$?run?hello.groovy?

參考文獻(xiàn)
http://docs.spring.io/spring-boot/docs/current/reference/html/getting-started-installing-spring-boot.html
https://docs.spring.io/spring-boot/docs/current/reference/html/cli-using-the-cli.html
https://www.concretepage.com/spring-boot/spring-boot-cli-example
源碼下載
https://www.concretepage.com/spring-boot/download/spring-boot-cli-example.zip來源:blog.csdn.net/qq_31635851/article/details/120411711
(完)
?關(guān)注公眾號:Java后端編程,回復(fù)下面關(guān)鍵字?
要Java學(xué)習(xí)完整路線,回復(fù)??路線?
缺Java入門視頻,回復(fù):?視頻?
要Java面試經(jīng)驗,回復(fù)??面試?
缺Java項目,回復(fù):?項目?
進(jìn)Java粉絲群:?加群?
PS:如果覺得我的分享不錯,歡迎大家隨手點贊、在看。
(完) 加我"微信"?獲取一份 最新Java面試題資料 請備注:666,不然不通過~
最近好文
1、再見了,收費的XShell,我改用國產(chǎn)良心工具!
3、SpringBoot快速開發(fā)利器:Spring Boot CLI
最近面試BAT,整理一份面試資料《Java面試BAT通關(guān)手冊》,覆蓋了Java核心技術(shù)、JVM、Java并發(fā)、SSM、微服務(wù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)等等。 獲取方式:關(guān)注公眾號并回復(fù)?java?領(lǐng)取,更多內(nèi)容陸續(xù)奉上。 明天見(??ω??)??
