A. GoLang -- Gin框架
• 何為框架:
框架一直是敏捷開發中的利器,能讓開發者很快的上手並做出應用,甚至有的時候,脫離了框架,一些開發者都不會寫程序了。成長總不會一蹴而就,從寫出程序獲取成就感,再到精通框架,快速構造應用,當這些方面都得心應手的時候,可以嘗試改造一些框架,或是自己創造一個。
Gin是一個golang的微框架,封裝比較優雅,API友好,源碼注釋比較明確,已經發布了1.0版本。具有快速靈活,容錯方便等特點。其實對於golang而言,web框架的依賴要遠比Python,Java之類的要小。自身的net/http足夠簡單,性能也非常不錯。框架更像是一些常用函數或者工具的集合。藉助框架開發,不僅可以省去很多常用的封裝帶來的時間,也有助於團隊的編碼風格和形成規范。
(1)首先需要安裝,安裝比較簡單,使用go get即可
go get github.com/gin-gonic/gin
如果安裝失敗,直接去Github clone下來,放置到對應的目錄即可。
(2)代碼中使用:
下面是一個使用Gin的簡單例子:
package main
import (
"github.com/gin-gonic/gin"
)
func main() {
router := gin.Default()
router.GET("/ping", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
router.Run(":8080") // listen and serve on 0.0.0.0:8080
}
簡單幾行代碼,就能實現一個web服務。使用gin的Default方法創建一個路由handler。然後通過HTTP方法綁定路由規則和路由函數。不同於net/http庫的路由函數,gin進行了封裝,把request和response都封裝到gin.Context的上下文環境。最後是啟動路由的Run方法監聽埠。麻雀雖小,五臟俱全。當然,除了GET方法,gin也支持POST,PUT,DELETE,OPTION等常用的restful方法。
Gin可以很方便的支持各種HTTP請求方法以及返回各種類型的數據,詳情可以前往https://github.com/gin-gonic/gin查看。
2.1 匹配參數
我們可以使用Gin框架快速的匹配參數,如下代碼所示:
冒號:加上一個參數名組成路由參數。可以使用c.Param的方法讀取其值。當然這個值是字串string。諸如/user/rsj217,和/user/hello都可以匹配,而/user/和/user/rsj217/不會被匹配。
瀏覽器輸入以下測試:
返回結果為:
其中c.String是gin.Context下提供的方法,用來返回字元串。
其中c.Json是gin.Context下提供的方法,用來返回Json。
下面我們使用以下gin提供的Group函數,方便的為不同的API進行分類。
我們創建了一個gin的默認路由,並為其分配了一個組 v1,監聽hello請求並將其路由到視圖函數HelloPage,最後綁定到 0.0.0.0:8000
C.JSON是Gin實現的返回json數據的內置方法,包含了2個參數,狀態碼和返回的內容。http.StatusOK代表返回狀態碼為200,正文為{"message": 「welcome"}。
註:Gin還包含更多的返回方法如c.String, c.HTML, c.XML等,請自行了解。可以方便的返回HTML數據
我們在之前的組v1路由下新定義一個路由:
下面我們訪問
可以看到,通過c.Param(「key」)方法,Gin成功捕獲了url請求路徑中的參數。同理,gin也可以捕獲常規參數,如下代碼所示:
在瀏覽器輸入以下代碼:
通過c.Query(「key」)可以成功接收到url參數,c.DefaultQuery在參數不存在的情況下,會由其默認值代替。
我們還可以為Gin定義一些默認路由:
這時候,我們訪問一個不存在的頁面:
返回如下所示:
下面我們測試在Gin裡面使用Post
在測試端輸入:
附帶發送的數據,測試即可。記住需要使用POST方法.
繼續修改,將PostHandler的函數修改如下
測試工具輸入:
發送的內容輸入:
返回結果如下:
備註:此處需要指定Content-Type為application/x-www-form-urlencoded,否則識別不出來。
一定要選擇對應的PUT或者DELETE方法。
Gin框架快速的創建路由
能夠方便的創建分組
支持url正則表達式
支持參數查找(c.Param c.Query c.PostForm)
請求方法精準匹配
支持404處理
快速的返回給客戶端數據,常用的c.String c.JSON c.Data
B. 雲伺服器怎麼使用
1、准備好一台雲伺服器,雲伺服器多包含的基本配置就是cup,內存,硬碟等基本配置。;
2、利用雲伺服器的IP地址,賬戶名,密碼來登錄。(雲伺服器的用戶名是由雲伺服器的系統而定的,windows系統用戶名就是administrator,linux系統用戶名就是root);
3、用電腦來登錄雲伺服器,從電腦桌面打開「遠程桌面連接」;
4、輸入雲伺服器的IP地址埋缺,點擊連接;
5、鏈接之後,輸纖缺入賬號和密碼(這里需要注意,電腦的操作系統必須和雲主機操作系統一致,才能登陸成功);彎豎辯
6、登陸成功之後,在您的電腦桌面上就會出現雲主機操作桌面啦。您可以在這里部署您的網站,應用程序等其他應用。
C. 如何將Java web項目部署到伺服器
一、前言
前面我們已經嘗過了在雲伺服器上部署代碼的甜頭了,現在主菜就要上場了,那就是將我們的 JavaWeb 項目部署到雲伺服器上。興奮吧?淡定淡定~
二、項目部署
我們對於 Java Web 項目在本地機器(無論是 Windows 還是 Linux)上的部署已經瞭然於心了,那麼對於在雲伺服器上部署 Java Web 項目又是如何操作的呢? 其實很簡單,還是離不開 Web 項目部署的那三點:
① 基礎的 JDK 環境
② 一個 Web 伺服器。如 Tomcat、JBoss
③ 一款資料庫。如:mysql
對於雲伺服器上 Java Web 項目的部署,和平時在 Windows、Linux 下部署是一樣的。最多也就是只能使用純命令模式來操作而已,其實過程都一樣。
2.1 環境准備
既然是 Java Web 項目的部署,首先自然需要配置好相關的環境羅。也就是:先在雲主機上搭建好 Java 開發環境,如 OpenJDK 的安裝、Tomcat 的安裝、Mysql 資料庫的安裝。
2.2 項目部署
我們要部署 Java Web 項目,那就至少得將項目上傳到雲伺服器。其實過程很簡單,基本上也就是下面三個步驟:
① 打包上傳:將項目打包成 war 文件,然後利用傳到遠程伺服器(在Eclipse中直接將項目導出為.war文件)。
② 將 war 文件移動到 Tomcat 目錄下的 webapps 下。
③ 重啟 Tomcat,訪問我們的項目。
在這個過程中,我們需要注意。因為一般而已,作為一個 Web 項目,我們肯定是有資料庫的使用的。那麼資料庫部分怎麼辦呢?其實,只需要將我們已有的資料庫轉儲為 sql 文件,然後將 sql 文件上傳到雲伺服器上執行即可。以 mysql 為例,如下操作:
① 轉儲為 sql 腳本,並上傳:先在本地將我們項目使用的資料庫轉為 sql 文件,上傳到雲伺服器上 (可以利用 Navicat 將資料庫轉儲為.sql文件)。
② 執行 sql:然後進入 mysql 中執行該 sql 文件。(若伺服器裝有Navicat,可直接用Navicat執行.sql文件,執行前需要選中存放表的資料庫,應該與代碼中資料庫連接語句包含的資料庫名保持一致)