? ? ? ? 8月24日的文章“全棧工程師移動開發實踐━Restful與Spring Boot詳解”中,我向大家介紹了Spring Boot的maven配置,今天我們來看看Spring Boot的第一個應用,也即一門語言的標配--Hello World的實現,也是為我們之后的app與server之間交互打下基礎。
1.首先在配置好Spring Boot依賴的工程中,新建一個java類,如下,命名為RestfulDemo:
2.接下來重點講解這個類中的每個細節。
(1)@RestController和@RequestMapping注解
RestfulDemo類的上面使用的第一個注解是@RestController,它通常被稱為一個構造型(stereotype)注解。RestController本身不是Spring Boot特有的,它繼承自@Controller注解。Controller用來標識當前類是一個控制器servlet。在本示例中,我們的類是一個web @Controller,所以當處理進來的web請求時,Spring會詢問它。RestController相當于@ResponseBody + @Controller。ResponseBody用于將Controller的方法返回的對象,通過適當的HttpMessageConverter轉換為指定格式后,寫入到Response對象的body數據區,當返回的數據是json、xml等時使用。
(2)@RequestMapping注解
RequestMapping注解主要用來提供路由信息,它告訴Spring任何來自"/"路徑的HTTP請求都應該被映射到home方法。RequestMapping注解有六個屬性,下面我們把她分成三類進行說明。
value: 指定請求的實際地址;
method:指定請求的method類型, GET、POST、PUT、DELETE等;
consumes: 指定處理請求的提交內容類型(Content-Type),例如application/json, text/html;
produces:??? 指定返回的內容類型,僅當request請求頭中的(Accept)類型中包含該指定類型才返回;
params: 指定request中必須包含某些參數值是,才讓該方法處理。
headers: 指定request中必須包含某些指定的header值,才能讓該方法處理請求。
(3)@EnableAutoConfiguration注解
EnableAutoConfiguration是Spring Boot根據我們在pom中設置的依賴自動配置spring。由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以auto-configuration默認我們在開發一個web應用并相應地對Spring進行設置,當然我們也可以手動配置。
(4)SpringApplication類
在main方法通過調用SpringApplication類的run,將業務委托給了Spring Boot,啟動Spring,相應地啟動被自動配置的Tomcat web服務器。
3.應用程序的運行
? ? ? ? Spring ?Boot的運行有幾種方式,在這里我介紹兩種。
(1)MyEclipse啟動
右鍵單擊RestfulDemo類->Run As->Java Application
如果看到圖中紅色的提示語,說明項目正常啟動,此時在瀏覽器輸入http://localhost:8080/,就能看到“Hello World!”的輸出。
(2)使用maven命令行啟動
當前我們的pc如果配置了maven,也可以在命令行下啟動。由于使用了spring-boot-starter-parent的依賴,這樣我們就有了一個非常有用的run目標。命令行進入到工程根目錄,輸入
mvn spring-boot:run來啟動應用:
? ? ? maven會下載一些依賴,初始化組件,最終也會打印出Tomcat啟動成功的信息。
? ? ? 至此,Spring Boot的Hello World應用完美啟動。下一節,我們將搭建android客戶端基本框架,歡迎繼續關注。