文章使用版本為 Spring Boot 2.1.x
對應(yīng)進(jìn)階系列 Spring Boot 進(jìn)階系列(一)Hello World 項目
新建項目
新建項目的方式有很多種,這里我推薦大家使用IDEA來新建spring boot項目
第一步
打開idea,選擇File => New => Project...(或者M(jìn)odule...) 然后看到如下畫面,選擇Spring Initializr,右側(cè)選擇Initializr Service URL,這里我們使用默認(rèn)值

第二步
點(diǎn)擊Next,稍等片刻(視https://start.spring.io的訪問速度),就可以看到填寫項目信息的界面,在這里可以填寫項目的Group和Artifact,項目Type可以根據(jù)需要選擇Maven或者Gradle,Packaging的方式可以選擇Jar或者War,推薦使用Jar

第三步
點(diǎn)擊Next,可以看到整個新建項目最重要的一步,選擇spring boot的版本以及項目依賴的各種組件,這里除了spring boot的依賴以外,還有spring cloud的各種依賴。

下面介紹一些常用的組件
Developer Tools
- Spring Boot DevTools :主要用于熱部署,當(dāng)你修改代碼后,項目會自動重啟,其實(shí)并不好用。如果想使用熱部署,推薦使用 Jrebel。
- Lombok :lombok 通過一系列注解,簡化Java代碼,IDEA要配合插件(Lombok Plugin)使用,項目必備組件。
Web
- Spring Web Starter :使用 Spring MVC 構(gòu)建 Web 應(yīng)用,默認(rèn)使用 Tomcat 作為內(nèi)置容器。
- Spring Reactive Web :使用 Spring WebFlux 和 Netty 構(gòu)建響應(yīng)式 Web 程序。
- Spring Session :Spring Session,提供了集群部署應(yīng)用時,統(tǒng)一管理 session 的方式。
Template Engines
提供了多種模板引擎,用于生成 HTML 頁面,但是現(xiàn)在流行前后端分離,所以不怎么使用。
Security
- Spring Security :Spring Security,提供認(rèn)證、授權(quán)、鑒權(quán)等功能。
SQL
- Spring Data JPA :如果想使用JPA操作數(shù)據(jù)庫,則需要勾選,JPA包含了JDBC。
- MyBatis Framework:如果想使用MyBatis操作數(shù)據(jù)庫,則需要勾選,MyBatis包含了JDBC。
- JDBC API:如果只想單純使用JdbcTemplate操作數(shù)據(jù)庫,可以勾選。
- MySQL、H2、SQL Server等 :對使用各種數(shù)據(jù)庫提供支持。
NoSQL
- Redis、MongoDB等 :對使用各種NoSQL數(shù)據(jù)庫提供支持
Messaging
- 對 RabbitMQ、Kafka 等消息隊列提供支持。
IO
- Spring Cache :提供基于注解的緩存技術(shù)。
由于我們只是新建一個 Hello World 項目,我們只選擇 Web 下的 Spring Web Starter 就可以生成一個簡單的 web 項目。
第四步
點(diǎn)擊Next,填寫項目名稱和項目路徑即可完成整個項目的創(chuàng)建
修改項目
項目新建完成后,我們先來觀察下整個項目的結(jié)構(gòu)。首先我們會看到一個名為 SpringBootHelloworldApplication 的 Java 類,這個類就是我們整個項目的啟動類;resources 文件夾下有一個名為 application.properties 的文件,這個文件用來保存我們項目的各種配置,這里推薦大家把 application.properties 后綴改成yml,使用 application.yml 來保存項目配置,因?yàn)閥ml格式更簡潔。
-
新建 controller 文件夾,并新建一個 HelloworldController 類
HelloworldController 啟動項目, 訪問 http://localhost:8080/hello/schhx,可以看到返回的結(jié)果 Hello, schhx !
總結(jié)
我們主要學(xué)習(xí)了通過IDEA來新建一個基于spring boot的web項目,同時介紹了spring boot的一些常用組件。
