本系列文章,從零基礎接觸 SpringBoot2.x新版本,基礎入門使用,熱部署,到整合各個主流框架Redis4.x,消息隊列AciveMQ, RocketMQ等,搜索框架ElasticSearch5.6版本,到web-flux反應式編程,到Actuator監控應用信息,官方最佳實踐,最全的SpringBoot2.教程html
技術選型和更新須知:前端
資料和開發工具準備:java
學過javaweb的同窗就知道,開發一個web應用,從最初開始接觸Servlet結合Tomcat, 跑出一個Hello Wolrld程序,是要經歷特別多的步驟; 後來就用了框架Struts,再後來是SpringMVC,到了如今的SpringBoot,過一兩年又會有其餘web框架出現;不知道大家有沒經歷過框架不斷的演進,而後本身開發項目全部的技術也再不斷的變化、改造,反正我是都經歷過了,哈哈。web
言歸正傳,什麼是SpringBoot呢,就是一個javaweb的開發框架,和SpringMVC相似,對比其餘javaweb框架的好處,官方說是簡化開發,約定大於配置, you can "just run",能迅速的開發web應用,幾行代碼開發一個http接口。spring
學任何框架,都從hello world開始,這個也不例外,咱們先建立一個http接口,返回json數據。apache
SpringBoot官方提供了一個快速建立應用的工具「Spring Initializr」 , 地址:http://start.spring.io編程
經過這個能夠幫咱們生成一個項目的基礎框架和目錄規範,操做以下圖的順序json
一、下載後導入到IDEA或者Eclipse裏面,springboot默認加入了不少依賴包,因此須要從遠端的maven倉庫下載下來,初次導入須要下載不少的依賴包,會比較慢,不過也能夠更改Maven倉庫地址爲國內的的倉庫地址。後端
二、官方包目錄接口說明緩存
三、Maven依賴文件講解
核心配置文件在圖片上面,底部有不少暫時用不上的配置,好比倉庫地址能夠去除,下面的pom文件的均可以去除
<repositories> <repository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <snapshots> <enabled>true</enabled> </snapshots> </repository> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> <pluginRepository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> </pluginRepositories>
一、新建一個包,domian用於存放實體類,並新建一個User.java類
package net.xdclass.demo.domain;/** * 用戶類 */public class User { private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
二、新建一個Controller,並創建一個UserController.java, 類加入註解@RestController (用於返回Json數據,若是用@controller的話,須要在加個@responseBody,纔會返回json數據),新建一個findUser方法,方法上加個註解,@RequestMapping("find")
package net.xdclass.demo.controller; import net.xdclass.demo.domain.User; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * 使用 @RestController 定義一個控制器 */ @RestController public class UserController { /** * 定義一個接口,接受兩個參數 * @param id * @param name * @return */ @RequestMapping("find") public User findUser(int id, String name){ User user = new User();user.setName(name); user.setId(id); return user; } }
三、使用CMD或者命令行工具進入項目根目錄,把應用打包成一個可執行的jar包, 執行maven打包命令 mvn clean package
[INFO] [INFO] Results: [INFO] [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] [INFO] [INFO] --- maven-jar-plugin:3.0.2:jar (default-jar) @ demo --- [INFO] Building jar: /Users/xdclass/Desktop/文章/第一篇/demo/target/demo-0.0.1-SNAPSHOT.jar [INFO] [INFO] --- spring-boot-maven-plugin:2.0.3.RELEASE:repackage (default) @ demo --- [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 5.459 s [INFO] Finished at: 2018-07-16T08:34:57+08:00 [INFO] ------------------------------------------------------------------------
打包成功後最後會出現一個success,而後進入target目錄,裏面有個xxx.jar (xxx就是項目的名字)就是能夠直接執行的jar包.
啓動 java -jar xxxx.jar, 啓動大概花10來秒,底部能夠看到啓動成功的日誌,springboot默認端口是8080, 因此能夠直接訪問,
接口地址:http://localhost:8080/find?id=1&name=二當家小D
響應一個user對象,就成功了。
這就是一個成功的http接口,一個web應用就能夠正常啓動了訪問和訪問了,若是要開發其餘接口,繼續寫就能夠了。
小編積累多年的乾貨文檔免費贈送,包含前端後端和測試,系統架構,高併發處理,優化等