Spring Boot快速入門(最新)


本章通過完成Spring Boot基礎項目的構建並實現一個簡單的Http請求處理,讓大家對Spring Boot有一個初步的了解,並體驗其結構簡單、開發快速的特性。預計閱讀及演練過程將花費約5分鍾。

使用Maven構建項目

  1. 通過SPRING INITIALIZR工具生成基礎項目
    1. 訪問:http://start.spring.io/
    2. 填寫group(例如com.v5ent),選擇構建工具Maven Project、Spring Boot版本以及一些工程基本信息,可參考下圖

       

    3. 點擊Generate Project下載項目壓縮包
  2. 解壓項目包,以Maven項目形式導入到IDE中

項目結構解析

通過上面步驟完成了基礎項目結構的創建,Spring Boot的基礎結構共三個文件:

  • src/main/java下的程序入口:DemoApplication
  • src/main/resources下的配置文件:application.properties
  • src/test/下的測試入口:DemoApplicationTests

生成的DemoApplicationDemoApplicationTests類都可以直接運行來啟動當前創建的項目,由於目前該項目未配合任何數據訪問或Web模塊,程序會在加載完Spring之后結束運行。

引入Web模塊

當前的pom文件已經引入了兩個模塊:

  • spring-boot-starter:核心模塊,包括自動配置支持、日志和YAML
  • spring-boot-starter-test:測試模塊,包括JUnit、Hamcrest、Mockito

我們需添加spring-boot-starter-web模塊:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

編寫HelloWorld服務

  • 創建package命名為com.v5ent.demo.web
  • 創建HelloController類,內容如下
@RestController
public class HelloController {
    @RequestMapping("/hello")
    public String index() {
        return "Hello World";
    }
}
  • 啟動主程序,打開瀏覽器訪問http://localhost:8080/hello,可以看到頁面輸出Hello World

編寫單元測試用例

打開src/test/下的測試入口DemoApplicationTests類。下面編寫一個簡單的單元測試來模擬http請求,具體如下:

@RunWith(SpringRunner.class) 
@SpringBootTest
public class DemoApplicationTests {
    private MockMvc mvc;
    @Before
    public void setUp() throws Exception {
        mvc = MockMvcBuilders.standaloneSetup(new HelloController()).build();
    }
    @Test
    public void getHello() throws Exception {
        mvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))
                .andExpect(status().isOk())
                .andExpect(content().string(equalTo("Hello World")));
    }
}

使用MockServletContext來構建一個空的WebApplicationContext,這樣我們創建的HelloController就可以在@Before函數中創建並傳遞到MockMvcBuilders.standaloneSetup()函數中。

注意引入下面內容:

import static org.hamcrest.Matchers.equalTo;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;

Ok,跑起來,完全和預想的一樣。至此已完成本章目標,通過Maven構建了一個空白Spring Boot項目,再通過引入web模塊實現了一個簡單的請求處理。

如此快速、開箱即用,爽到飛起。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM