spring boot簡介
spring boot框架拋棄了繁瑣的xml配置程序,采用大量的默認配置簡化我們的開發程序,
所以采用Spring boot可以非常容易和快速地創建基于Spring 框架的應用程式,它讓編碼變簡單了,配置變簡單了,部署變簡單了,監控變簡單了,
說的直白一些使用spring boot之后就不用像以前使用ssm的時候添加那么多組態檔了,spring boot除了支持ssm之外,還支持非常多的第三方技術,spring boot就像是一個百寶箱,你要用那些技術,直接告訴他就行了,在spring boot中寫的代碼跟以前一樣,所以在學習的時候非常容易上手,
而對于springboot,除了使用簡單之外,就像我前面說的,他就像是一個百寶箱一樣,為什么這么說呢,一張圖給你清晰將清楚
但是,一切技術的入門都是從基礎開始,就像我們開始第一個Java程式,撰寫的就是HelloWorld一樣,同樣的, 對于springboot的入門程式,我也會帶你搭建你的第一個HelloWorld
文章首發公眾號:Java架構師聯盟
好了,開始重點(ps:不要著急劃走,看到最后)
版本要求
這里我們使用spring boot2.x的版本,要求版本號:
jdk8+
maven3+
第一個spring boot專案
在idea中通過插件創建一個spring boot專案,創建好之后會生成一些目錄和類,
創建一個模塊
設定group和artifact,這里選擇jar包
勾選web,這里創建一個web專案
next + finish
可以看到SpringBoot的目錄結構
Application類(入口類)
在Application類中有一個@SpringBootApplication注解,這是是springboot的核心注解,主要作用是開啟spring自動配置,
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
main方法中的SpringApplication.run在啟動的時候會啟動springboot程式,啟動spring容器,啟動內嵌的tomcat容器,
- @Configuration 允許將其他@bean注解標識的類加入到spring容器中,相當于spring組態檔中的beans標簽
- @EnableAutoConfiguration 啟動自動配置
- @ComponentScan 會自動掃描當前包和子包下的標有@Component, @Service,@Repository,@Controller的類,相當于以前spring組態檔中的context:component-scan
ps:不要創建一個比Application類包級別高的類,需要創建子包,因為spring boot會自動掃描application類的子包或者是平級的類,如果是高與application的話就無法掃描了,
resources目錄
- application.properties 是spring boot組態檔
- static存放靜態資源
- templatesspring boot動態的資料不建議使用jsp,而是使用thymeleaf模板語言,跟velocity和freemarker類似,是一個模板引擎,是獨立于spring boot的,并不是spring boot的一部分,
pom檔案決議
依賴沒有版本號,是從父工程中選擇繼承的(應該是父工程的父工程,爺爺輩),這個依賴叫做起步依賴,這些第三方的依賴是寫在了dependencymanagement中,所以我們的專案如果要使用的話,還需要些依賴,只不過版本號是可以省略的,如果不想使用spring boot的默認版本的話,自己手動添加版本號即可
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
//添加相應的依賴檔案
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
撰寫spring mvc的controller
在Application類的下面再創建一個controller包,創建一個Controller
package com.example.demo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@RequestMapping(value = "https://www.cnblogs.com/biws")
public String biws() {
return "Hello World";
}
}
啟動入口類
打開瀏覽器,訪問localhost:8080/biws 即可看到頁面顯示出
證明我們第一個SpringBoot程式成功運行了
ps:第一次使用springboot的各位,你可能需要多等待一會,因為springboot相應的maven依賴支撐要下載一段時間的,當然了,網速牛的人當我沒說
總結
spring boot就相當于一個平臺,把我們需要一些東西準備好了,我們在這個平臺里面填充業務代碼即可,即代碼跟以前代碼區別不大,
1、能夠快速創建基于Spring的應用程式;
2、能夠直接使用java main方法啟動內嵌的Tomcat服務器運行Spring boot程式,不需要部署war包檔案;
3、提供約定的starter POM來簡化Maven配置,讓Maven的配置變得簡單;
4、根據專案的Maven依賴配置,Spring boot自動配置Spring、Spring mvc等;
5、提供了程式的健康檢查等功能;
6、基本可以完全不使用XML組態檔,采用注解配置,
而這只是初始的springboot相關內容,而對于springboot的相關內容,其實還有很多的內容,為什么這么說呢,因為這是我個人的一個愛好,就是每學習一個新的技術,我都會去做一些思維導圖,springboot也不例外,所以今天在撰寫這篇技術分享的時候我打開了我的springboot思維導圖,嚇我一跳,沒想到展開已經這么大了(太長了,最后展示吧),其實這就是我們在學習的程序中該有的樣子,從最一開始的helloworld,到現在動不動就上萬行代碼實作,不都是這樣一步步走下來的呀
我會從今天開始,梳理我學過的知識點,既是對自己的一個成長和鞏固,也希望大家能夠和我一起回顧自己的知識點,大家一起成長
最后,展示一下我整理的springboot的知識圖譜吧,哈哈哈哈哈,看著就很有成就感啊
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/236899.html
標籤:Java
