快速入門
本文將向您描述如何使用 SOFABoot 框架創(chuàng)建一個Web 工程,實現(xiàn)本地運行或部署到云端運行,以及如何引入中間件服務(wù)。
主要步驟如下:
Core 工程 與 Web 工程類似,具體步驟詳見 新建工程。
創(chuàng)建 Web 工程
前置條件
為執(zhí)行本文代碼示例,您需要首先搭建 SOFABoot 的運行環(huán)境。具體步驟詳見 搭建環(huán)境。
創(chuàng)建步驟
SOFABoot Web 工程的創(chuàng)建,主要分為 2 個步驟:
具體操作步驟如下:
創(chuàng)建本地工程
本文檔僅支持 SOFABoot ≥ 3.3.0 版本的創(chuàng)建,如需升級,請參考 SOFABoot 升級說明。
打開命令行工具,輸入并執(zhí)行以下語句:
mvn archetype:generate -DarchetypeGroupId=com.alipay.sofa -DarchetypeArtifactId=sofaboot-web-archetype -DarchetypeVersion=1.0-SNAPSHOT -DarchetypeCatalog=internal
在執(zhí)行過程中,根據(jù)系統(tǒng)提示輸入以下 Maven 坐標(biāo)信息:
groupId:是 Maven 倉庫中的唯一標(biāo)識,一般為公司域名或組織域名的反寫。作為示例,可填為
com.alipay.sofa
。artifactId:表示項目名稱或應(yīng)用名稱。作為示例,可填為
web-app
。version:版本號,默認(rèn)為
1.0-SNAPSHOT
。SNAPSHOT 意為快照,說明該項目還在開發(fā)中,是不穩(wěn)定的版本。作為示例,此處可維持默認(rèn)值。package:應(yīng)用包名,默認(rèn)等同于 groupId。
# 示例 Define value for property 'groupId': com.alipay.sofa Define value for property 'artifactId': web-app Define value for property 'version': 1.0-SNAPSHOT Define value for property 'package': com.alipay.sofa
確認(rèn)輸入的 Maven 坐標(biāo)信息。
如果信息無誤,輸入 Y 確認(rèn),則工程繼續(xù)創(chuàng)建。
如需修改信息,輸入 N 重新定義工程屬性。
# 示例 Confirm properties configuration: groupId: com.alipay.sofa artifactId: web-app version: 1.0-SNAPSHOT package: com.alipay.sofa Y::
工程創(chuàng)建完成。命令行提示以下信息。您可以在當(dāng)前路徑下的
./web
文件夾找到創(chuàng)建的工程文件。[INFO]Project created fromArchetypein dir:{current_dir}/web [INFO]------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO]------------------------------------------------------------------------ [INFO]Total time:28.298 s [INFO]Finished at:2018-01-10T23:36:19+08:00 [INFO]FinalMemory:15M/163M [INFO]------------------------------------------------------------------------
請移步 版本說明,查看最新的 SOFABoot 版本,然后在工程根目錄下的主 pom.xml 中,修改
<parent>
標(biāo)簽的版本號,示例如下:
配置關(guān)鍵屬性
在云端發(fā)布前,請務(wù)必進行 application.properties
配置。更多詳情,請參考 引入 SOFA 中間件。配置步驟如下:
請前往 SOFAStack 控制臺 > 研發(fā)效能 > 腳手架 > Step 2,示例如下:
從中獲取下述信息:
實例標(biāo)識:應(yīng)用實例在工作空間中的唯一標(biāo)識,在 application 中對應(yīng)的 key 為:
com.alipay.instanceid
。AntVIP:應(yīng)用通過 AntVIP 來獲取各個組件的服務(wù)端地址,每個區(qū)域一個地址。在 application 中對應(yīng)的 key 為
com.antcloud.antvip.endpoint
。不同環(huán)境的 AntVIP 地址值,見下述規(guī)定。杭州金區(qū):
cn-hangzhou-fin-middleware-acvip-prod.cloud.alipaycs.net
上海非金:
cn-shanghai-middleware-acvip-prod.cloud.alipaycs.net
上海金區(qū):
cn-shanghai-fin-sofastack-middleware-acvip-prod.cloud.alipaycs.net
杭州非金:
cn-hangzhou-middleware-acvip-prod.cloud.alipaycs.net
在 腳手架 控制臺,單擊右上角用戶圖像,選擇 AccessKey Management,在跳轉(zhuǎn)的頁面中即可獲取訪問控制對應(yīng)的屬性值。 這些屬性在 application 中對應(yīng)的 key 分別為:
Access Key ID:
com.antcloud.mw.access
Access Secret:
com.antcloud.mw.secret
說明如果需要創(chuàng)建 AccessKey,可單擊 獲取 AK。更多詳情,請參見 創(chuàng)建 AccessKey。
確定運行模式和運行環(huán)境,示例如下:
run.mode=NORMAL com.alipay.env=shared
將上述屬性鍵和值,配置在
application.properties
文件中。
對于有關(guān) SOFABoot 框架的整體配置、工程依賴的配置,以及中間件服務(wù)的配置,請參見:
將 Web 工程導(dǎo)入 IDE
SOFABoot 工程是標(biāo)準(zhǔn)的 Maven 工程。您可以使用經(jīng)典的 Java 開發(fā)工具(如 IntelliJ IDEA 、Eclipse 等)對其進行開發(fā)。請遵照以下步驟將 SOFABoot 工程導(dǎo)入相應(yīng)的 IDE 工具中:
IntelliJ IDEA
打開 IntelliJ IDEA 程序。
導(dǎo)入之前創(chuàng)建的工程目錄。
如果您是首次使用,或者之前關(guān)閉了所有工程,程序會跳出歡迎界面。在該界面中,單擊 Open > 選擇之前創(chuàng)建的工程目錄 > OK。
如果 IntelliJ IDEA 自動為您載入了上次未關(guān)閉的工程,您可以單擊 File > Open > 選擇之前創(chuàng)建的工程目錄 > OK。
配置 Maven:
單擊 File > Settings,打開設(shè)置窗口,并通過以下任一方式定位到 Maven 配置頁面:
依次單擊 Build, Execution, Deployment > Build tools > Maven。
搜索關(guān)鍵字 Maven。
將 Maven home directory 項配置為本地 Maven 安裝目錄。
將 User Settings file 項配置為本地 Maven 的
settings.xml
文件路徑。單擊 OK 關(guān)閉設(shè)置窗口。
導(dǎo)入完成后,您可以在工程文件目錄中查看工程結(jié)構(gòu)與內(nèi)容。
Eclipse
打開 Eclipse 程序。
配置 Maven:
單擊 Window > Preferences,打開首選項窗口,并搜索關(guān)鍵字 Maven 定位到 Maven 配置頁面。
在 Maven 下,選擇 Installations 并配置 Maven 目錄。
如果 Installations 列表中已有本地 Maven 安裝目錄選項,直接勾選該選項。
如果列表中沒有本地 Maven 安裝目錄選項,單擊 Add。在新窗口中,將 Installation home 配置為本地 Maven 安裝目錄,單擊 Finish 返回并勾選新添加的目錄選項。
單擊 Apply,保存配置。
在 Maven 下,選擇 User Settings 并將 User Settings 項配置為本地 Maven 的
settings.xml
文件路徑。單擊 Apply and Close 保存配置并關(guān)閉首選項窗口。
單擊 File > Import > Maven > Existing Maven Projects > Next > 選擇之前創(chuàng)建的工程目錄 > Finish。
本地編譯運行
主要操作步驟如下:
通過下述任一方式啟動本地工程:
命令行方式啟動:
通過 cd 命令,進入工程根目錄。
執(zhí)行
mvn clean install
命令。
通過 IDE 方式啟動:運行 Web 模塊下的 main 函數(shù)。
成功運行后,在瀏覽器中訪問
http://localhost:8080/index.html
,您可以看到以下靜態(tài)頁面信息:the static page inSOFABoot based on spring-boot
說明SOFABoot Core 工程是沒有頁面的工程,因此無法在本地進行效果預(yù)覽。但可以通過
http://localhost:8080/actuator/readiness
進行健康檢查。如果 status 為 UP,表示創(chuàng)建成功。更多本地編譯運行 SOFABoot 工程的方法,請參閱 本地運行。
云端運行
應(yīng)用整體的發(fā)布流程,請參考 技術(shù)棧使用指南 中的 技術(shù)棧與應(yīng)用發(fā)布流程。
應(yīng)用的詳細(xì)發(fā)布步驟,建議參考 經(jīng)典應(yīng)用服務(wù) 下的 快速入門。
引入中間件服務(wù)
在成功創(chuàng)建 SOFABoot 工程后,通過在主 pom 文件中引入 starter,即可實現(xiàn)使用中間件服務(wù)。
中間件服務(wù)類別,以及對應(yīng) starter 版本信息的說明,請參考 引入 SOFA 中間件。
對于各中間件服務(wù)的示例 demo,請參考對應(yīng)產(chǎn)品的快速入門。