Spring boot學習(一)開啓Spring boot之旅

介紹

Spring boot 是基於Spring的一個全新的框架,它的目的是用來簡化Spring應用的初始搭建以及開發過程。若是你之前使用過相似於SSM這種框架,你應該清楚要搭建一個SSM框架須要哪些步驟,Spring boot就簡化甚至消除了這些步驟,你會發現你基本上什麼都不用作,只須要考慮業務邏輯方面的代碼就能夠了,極大的節省了咱們的開發時間,這是一個用了就不想換的框架!css

文章首發於我的博客:【www.xiongfrblog.cnhtml

搭建一個簡單的Spring boot應用

不一樣的開發工具備不一樣的方式,其中IDEA已經集成了Spring boot的插件,直接新建就能夠了,eclipse須要本身安裝插件才能使用。這裏我就只介紹經過http://start.spring.io/ 來構建一個Spring boot項目。java

生成項目文件

訪問http://start.spring.io/ ,出現下面的頁面:web

在這裏插入圖片描述

從圖中能夠看到默認是經過Maven構建項目,而且使用Java語言,Spring boot使用2.1.2版本,這些咱們根據本身實際需求更改,我這裏就使用默認的,接下來完善頁面信息,因爲咱們只是搭建一個簡單的Spring boot項目Demo,這裏全部的信息使用默認的便可。點擊頁面上的 Switch to the full version,出現更多的配置以及讓咱們選擇的依賴項,配置咱們不用管,勾選上web依賴就能夠了,以下圖:spring

在這裏插入圖片描述

最後咱們點擊generate project按鈕生成項目文件,文件是一個壓縮包,選擇保存的路徑下載到本地。後端

導入到開發工具

將咱們上一步下載的壓縮包解壓,而後以Maven項目的形式導入到咱們使用的開發工具中(我這裏使用的eclipse),這個步驟可能會須要一下子時間,耐心等待便可,項目導入成功後項目的結構以下:瀏覽器

在這裏插入圖片描述

會發如今src/main/java目錄下的com.example.demo包下爲咱們生成了一個DemoApplication.java的文件,這是咱們項目的入口類,名字是按ArtifactId+Application的命名規則生成的。springboot

src/main/resources目錄下生成了application.properties配置文件,之後項目有關的配置都寫在這個文件裏邊。bash

src/main/resources目錄下還爲咱們建立了statictemplates文件夾(若是沒有,也不用擔憂,須要的時候本身手動添加便可,這裏應該是根據咱們選擇的Spring boot版本以及依賴有關)。static文件夾通常用來存放項目中的靜態資源文件例如:css樣式,js腳本,圖片等,templates文件夾通常用來存放html文件,Spring boot爲咱們建立這些文件夾的緣由下面會詳細說明,這裏只簡單介紹。app

在根目錄下生成了pom.xml文件,該文件是Maven管理項目依賴的文件。

重要的文件就這些,之後隨着項目功能的增長還會本身添加一些文件,這裏不作過多介紹。

簡單演示

首先咱們在com.exanple.demo包下邊新建一個controller包(注意包名統一小寫),在該包下新建DemoController.java文件,文件內容以下:

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/** * @author Promise * @createTime 2019年1月13日 下午5:15:45 * @description */
@RestController
public class DemoController {

	@RequestMapping("/hello")
	public String hello() {
		return "Hello World!";
	}
}
複製代碼

此時項目結構以下:

在這裏插入圖片描述

接下來須要啓動項目,上邊說過Spring boot爲咱們自動生成了一個啓動類DemoApplication.java咱們只須要右鍵點擊該啓動類,選擇Run as 再選擇Java Application便可,如圖:

在這裏插入圖片描述

控制檯打印出以下日誌說明啓動成功:

在這裏插入圖片描述

從日誌看出啓動端口爲8080,此時打開瀏覽器訪問localhost:8080/hello或者127.0.0.1:8080/hello便可出現以下內容:

在這裏插入圖片描述

到這一步,一個簡單的Spring boot項目就完成了,是否是很簡單呢。

訪問頁面

實際的web項目中咱們老是會訪問html頁面,那麼在Spring boot中怎麼訪問頁面呢?下面來介紹建立Spring boot的第一個頁面index.html

在上面介紹過的src/main/resources目錄下新建一個文件夾public,在public文件夾下新建index.html,內容以下(隨便寫都行):

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
		<h1>This is my first page!</h1>
</body>
</html>
複製代碼

按照上邊的步驟從新啓動項目,必定要從新啓動,此時咱們尚未配置Spring boot的熱部署功能,Spring boot不會爲咱們自動加載更新的內容,須要咱們手動啓動,啓動成功後,訪問localhost:8080或者127.0.0.1:8080出現以下內容說明訪問成功:

在這裏插入圖片描述

至此,咱們已經經過Spring boot成功訪問到第一個頁面了,到這裏,細心的小夥伴也許會發現,上邊我說過src/main/resources下的templates文件夾是用來存放html文件的,爲何咱們這裏要將index.html放在public文件夾下呢?

注意

由於這裏咱們沒有使用例如thymeleafFreeMakerVelocityJSP等模板引擎,因此咱們的html文件必須按照Spring boot的約定放在特定的目錄下,例如public。可是在實際的項目中(先後端分離項目除外)咱們通常都會選擇一個模板引擎來渲染頁面數據以及作一些邏輯判斷,好比筆者用的就是thymeleaf,項目中的html文件通常都放在templates目錄下。

約定大於配置

Spring boot中有不少約定俗成的配置須要咱們遵照,否則會有很糟糕的體驗,正所謂約定大於配置

  1. Spring boot默認提供靜態資源目錄位置需置於classpath下,即上面說的src/main/resources目錄下,而且靜態資源存放的目錄必須符合如下規則(目錄名字不能隨意更改):
  • /META-INF/resources
  • /resources
  • /static
  • /public

而且他們的優先級從高到低,即/META-INF/resources>/resources>/static>/public,在訪問靜態資源時,Spring boot會按照優先級從上面的目錄中尋找,驗證這一點很簡單,上邊咱們在public目錄下新建了index.html文件,如今咱們在static目錄下一樣新建index.html文件,寫不一樣的內容,重啓項目,再次訪問localhost:8080或者127.0.0.1:8080你會發現此時顯示的就是static目錄下的index.html文件中的內容。

  1. Spring boot默認的配置文件必須是,也只能是application或application-xxx命名的yml文件或者properties文件,固然咱們也能夠本身建立額外的配置文件,但須要其餘的配置,之後會介紹,這裏不作過多概述。
  2. 在yml文件或者properties文件中配置Spring boot的某些功能時,必須指定特定變量的值,好比咱們想要修改項目啓動的端口爲1188,須要在properties配置文件中寫入:
server.port=1188
複製代碼

在yml文件中則是:

server: 
 port: 1188
複製代碼

正是這些約定使得Spring boot變得如此簡單。

結語

好了,到這裏相信你已經對Spring boot有了一個大概的瞭解,關於Spring boot的更多內容博主會繼續更新,bye~

相關文章
相關標籤/搜索