網(wǎng)上介紹了許多如何創(chuàng)建Springboot項(xiàng)目,大多數(shù)基于IDE開發(fā)工具并且用Maven管理,如果在當(dāng)前的開發(fā)環(huán)境并不充裕下,我們可以直接使用Maven命令來創(chuàng)建管理SpringBoot項(xiàng)目,對于習(xí)慣使用命令來創(chuàng)建項(xiàng)目來說比較的方便、同時更好的理解SpringBoot的項(xiàng)目結(jié)構(gòu)。
以VSCode為例,Ctrl + ` 快捷鍵打開終端
假設(shè)項(xiàng)目的名稱為 example
在控制臺中輸入如下Maven指令即可生成
mvn archetype:generate
"-DgroupId=com.project"
"-DartifactId=example"
"-DarchetypeArtifactId=maven-archetype-quickstart"
"-DinteractiveMode=false"
創(chuàng)建成功后如圖所示,控制臺所示
注意:上面構(gòu)建的只是一個簡單的 Java 項(xiàng)目,如果是構(gòu)建 Web 項(xiàng)目,我們還需要對目錄結(jié)構(gòu)進(jìn)行調(diào)整,便于我們后續(xù)開發(fā),我們需要做如下調(diào)整。
經(jīng)過調(diào)整,目錄結(jié)構(gòu)如下圖所示:
4.0.0 com.project example jar 1.0-SNAPSHOT example http://maven.apache.org 用戶權(quán)限管理系統(tǒng) org.springframework.boot spring-boot-starter-parent 2.3.1.RELEASE UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-maven-plugin
1.4添加啟動類在啟動類中加入main方法,設(shè)置為啟動類。
package com.project.example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
@ServletComponentScan
@SpringBootApplication
public class exampleApplication {public static void main(String[] args) {SpringApplication.run(exampleApplication.class,args);
System.out.println("你好,這里是example項(xiàng)目");
}
}
1.5編譯打包項(xiàng)目終端輸入如下命令下載依賴
mvn clean install
執(zhí)行完畢后,項(xiàng)目結(jié)構(gòu)如下:
1.6添加controller內(nèi)容執(zhí)行完上面語句后(或者在創(chuàng)建完項(xiàng)目后),在項(xiàng)目根目錄下多了一個 target 目錄。target 是用來存放項(xiàng)目構(gòu)建后的 jar 包、war 包以及編譯的 class 文件等文件,target 目錄下的所有內(nèi)容均為 Maven 構(gòu)建項(xiàng)目過程中生成的。
項(xiàng)目觸目搭建成功,下面來編寫一個Controller接口來驗(yàn)證項(xiàng)目是否創(chuàng)建成功
package com.project.system.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController//Controller 里面的方法都以 json 格式輸出
public class FirstController {@GetMapping("/first")
public String first(){return "你好";
}
}
2.啟動項(xiàng)目下面將介紹兩種常用的控制臺啟動項(xiàng)目的方式。
此處我們是用Maven命令啟動項(xiàng)目
2.1使用Maven啟動項(xiàng)目mvn package 編譯打包
mvn spring-boot:run 啟動項(xiàng)目
啟動完成后,控制臺出現(xiàn)如下圖所示即為啟動成功:
在 Spring Boot 項(xiàng)目中,支持如下兩種文件格式的配置文件。
application.properties
application.yml
下面我們來看看 properties 配置文件和 yml 配置文件的區(qū)別。
# 默認(rèn)加載配置項(xiàng)
spring.profiles.active=prod
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=root
properties 文件有一個缺點(diǎn),當(dāng)要配置的參數(shù)比較多時,你就會發(fā)現(xiàn)它的層次不是那么清晰,不便于閱讀。而且很多同層級的名稱都是重復(fù)的。
spring:
profiles:
active: prod
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test
username: root
password: root
注意:上下層級的關(guān)系用空格表示,空格格數(shù)沒有要求,只要是左對齊的一列數(shù)據(jù)都是同一個層級的就行。為了美觀建議使用 Tab 縮進(jìn)或者統(tǒng)一空 4 格區(qū)分上下級。
properties 文件和 yml 文件都作為配置文件,他們的目的并沒有區(qū)別,相比 properties 配置文件,yml 配置文件在寫的時候?qū)哟胃袕?qiáng)。Spring 官方推薦使用的格式是 .yml 格式,所以目前大部分 Spring Boot 的 Web 項(xiàng)目的配置文件都是使用 yml 文件。本篇文章中我們也將使用 yml 文件作為項(xiàng)目的配置文件。
3.2配置端口和路徑在 /src/main/resources 目錄下創(chuàng)建 application.yml 文件,并寫入如下配置內(nèi)容,我們就可以修改項(xiàng)目的根路徑。
server:
# 配置端口
# port: 8080
servlet:
# 設(shè)置項(xiàng)目路徑
context-path: /example
添加完畢后,我們重新打包,運(yùn)行項(xiàng)目。
mvn package 編譯打包
mvn spring-boot:run 啟動項(xiàng)目
打開瀏覽器,輸入localhost:8080/upms/hello 進(jìn)行訪問,如下圖所示:
除了系統(tǒng)提供的配置,我們也可以在 application.yml 中添加如下自定義的配置。
server:
# 配置端口
port: 8080
servlet:
# 設(shè)置項(xiàng)目路徑
context-path: /example
# 自定義配置
example:
name: example
version: 0.0.1
description: example項(xiàng)目
如果想使用配置項(xiàng),我們只需要在類的屬性前加上注解 @Value(“${屬性名}”),我們可以在 controller/FirstController.java 中添加如下內(nèi)容:
package com.project.example.system.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController // Controller 里面的方法都以 json 格式輸出
public class FirstController {@Value("${example.name}")
private String appName;
@Value("${example.version}")
private String appVersion;
@Value("${example.description}")
private String appDescription;
@GetMapping("/Msg")
public String Msg() {return "名稱:" + appName + "," +
"版本:" + appVersion + " ," +
"描述" + appDescription;
}
@GetMapping("/first")
public String first() {return "你好";
}
}
添加完畢后,我們重新打包,運(yùn)行項(xiàng)目。
mvn package 編譯打包
mvn spring-boot:run 啟動項(xiàng)目
打開瀏覽器,輸入localhost:8080/upms/Msg進(jìn)行訪問,如下圖所示:
在開發(fā)項(xiàng)目的過程中,可能一套程序需要在不同的環(huán)境中發(fā)布,它的數(shù)據(jù)庫配置、端口配置或者其他配置各不相同,如果每次都來根據(jù)需要修改對應(yīng)的環(huán)境配置,是非常容易配置錯誤的,造成不必要的麻煩。
通常這種情況下,我們可以針對不同的環(huán)境配置不同的配置文件來解決。在 Spring Boot 項(xiàng)目中,默認(rèn)支持下面這兩種格式的。
其中 {name} 對應(yīng)環(huán)境標(biāo)識。我們在 Spring Boot 項(xiàng)目中也可以創(chuàng)建不同的配置文件,文件名以 application-{name}.yml 的格式。
我們在 src/main/java/resources 目錄下創(chuàng)建如下圖所示的配置文件。
在 application-dev.yml 配置文件中添加如下內(nèi)容。
# 自定義配置
example:
name: example
version: 0.0.2
description: example項(xiàng)目(開發(fā)環(huán)境)
在 application-prod.yml 配置文件中添加如下信息。
# 自定義配置
example:
name: example
version: 0.0.3
description: example項(xiàng)目(生產(chǎn)環(huán)境)
在 application-test.yml 配置文件中添加如下信息。
# 自定義配置
example:
name: example
version: 0.0.4
description: example項(xiàng)目(測試環(huán)境)
在 application-test.yml 配置文件中添加如下信息。
# 自定義配置
example:
name: example
version: 0.0.4
description: example項(xiàng)目(測試環(huán)境)
然后在配置文件 application.yml 中添加 spring.profiles.active 來設(shè)置當(dāng)前使用的環(huán)境,其中 test 代表默認(rèn)啟用 application-test.yml 配置文件。
也可以將 test 修改成 dev 或者 prod 后測試看下效果,這里我們就不再演示了。
4.個性化Banner配置我們注意到 Spring Boot 項(xiàng)目啟動時,控制臺會打印自帶的 Banner,如下圖所示:
如果我們也想自己定制一個怎么辦,這里有個定制 Banner 的網(wǎng)站
英文ASCII藝術(shù)字,Spring Boot自定義啟動Banner在線生成工具
文字、圖片都可以秀起來,怎么秀就看你的了.
只需要在 /resources 目錄下創(chuàng)建一個 banner.txt 文件,添加位置如下:
并在 banner.txt 文件中添加如下內(nèi)容。
_ __ _
___ __ __ __ _ _ __ | '_ \ | | ___
/ -_) \ \ / / _` | | ' \ | .__/ | | / -_)
\___| /_\_\ \__,_| |_|_|_| |_|__ _|_|_ \___|
_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|
"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'
添加完畢后,Spring Boot 啟動的時候會去加載這個文件,重新編譯運(yùn)行就可以看到效果。
mvn package 編譯打包
mvn spring-boot:run 啟動項(xiàng)目
雖然用處不大,但是看起來很炫酷,哈哈哈
在本篇文章中,介紹了如何使用 Spring Boot 來搭建 Java Web 項(xiàng)目,通過 Maven 工具安裝、打包和運(yùn)行整個項(xiàng)目,項(xiàng)目構(gòu)建完畢后,設(shè)置了自定義配置項(xiàng),并在項(xiàng)目中使用配置信息,針對不同環(huán)境定制不同的配置項(xiàng)。并且提供一個簡單的請求驗(yàn)證了項(xiàng)目的運(yùn)行效果,最后為項(xiàng)目定制了一個 Banner。
以上為個人的學(xué)習(xí)使用心得,如有不對請指出,歡迎大家討論。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
分享題目:使用Maven構(gòu)建SpringBoot項(xiàng)目-創(chuàng)新互聯(lián)
當(dāng)前URL:http://www.sd-ha.com/article28/dsdijp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、營銷型網(wǎng)站建設(shè)、小程序開發(fā)、手機(jī)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容