前言
時代在變化,科技在進步,程序員不努力,終將會被時代淘汰,就好比SSH(struts+spring+hibernate),SSM(Spring+SpringMVC+Mybatis)框架漸漸地被越多公司所更替掉,配置地獄嘛,受不了,如今,又了簡化配置的Springboot微服務框架,當然還有分佈式集羣的Springcloud框架,進而大部分公司轉入Springboot的懷抱,這誰又能說的定,可能以後還會出現Spring××呢,哈哈哈,廢話不多說,今天寫的是Springboot的簡單入門,概述介紹Springboot框架,當然還是要回顧一下Spring的,畢竟是基於Spring的。
什麼是Spring
Spring是一個開源的輕量級的容器框架,作者:Rod Johnson 。
Spring是爲了解決企業級應用開發的複雜性而創建的,簡化開發。
Spring的重要兩大思想
- IOC:控制反轉,依賴注入(DI)和麪向接口實現松耦合。
- AOP:面向切面編程,基於切面(AOP)和慣例進行聲明式編程。
什麼是SpringBoot
SpringBoot就是一個javaweb的開發框架,和SpringMVC類似,對比其他javaweb框架的好處,官方說是簡化開發,約定大於配置,能迅速的開發web應用,幾行代碼開發一個http接口。
Spring Boot 基於 Spring 開發,Spirng Boot 本身並不提供 Spring 框架的核心特性以及擴展功能,只是用於快速、敏捷地開發新一代基於 Spring 框架的應用程序。也就是說,它並不是用來替代 Spring 的解決方案,而是和 Spring 框架緊密結合用於提升 Spring 開發者體驗的工具。Spring Boot 以**約定大於配置的核心思想**,默認幫我們進行了很多設置,多數 Spring Boot 應用只需要很少的 Spring 配置。同時它集成了大量常用的第三方庫配置(例如 Redis、MongoDB、Jpa、RabbitMQ、Quartz 等等),Spring Boot 應用中這些第三方庫幾乎可以零配置的開箱即用。
言而總之,SpringBoot其實不是什麼新的框架,它默認配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架 ,生態足夠完善,成爲Java 領域最熱門的技術。
SpringBoot的優點
- 開箱即用,提供各種默認配置來簡化項目配置。
- 沒有冗餘代碼生成和XML配置的要求。
- 內嵌式容器簡化Web項目
創建項目
環境: java1.8 ,Maven-3.6.1,SpringBoot 2.x
工具:IDEA
當然也可以創一個Maven空項目,導入SpringBoot的依賴,創建啓動類,但是嘛,新手就是用一體化創建的不香嗎?
-
創建新項目,選擇spring initalizr,然後點擊Next。
-
填寫項目的信息,繼續Next
-
選擇初始化的組件(初學勾選 Web 即可),繼續Next
-
最後Finish創建項目
項目結構分析
- BoottestApplication.java:boot項目的啓動類
- static:存放靜態資源的地方,例如css,js,image…
- templates:存放前端模板的地方,就是前端的html頁面
- application.properties:項目的配置文件,也可用application.yml的格式來寫。
- pom.xml:項目的組件依賴,利用maven從遠程倉庫下載到本地項目。
pom.xml分析
<!-- 項目的父依賴 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath/>
</parent>
<dependencies>
<!-- web項目的啓動器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- springboot單元測試 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<!-- 剔除依賴 -->
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 打包插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
我們來個helloworld,感受一下Springboot。
-
到在主程序的同級目錄下,新建一個controller包,一定要在同級目錄下,否則識別不到
-
在controller創建一個HelloController類
註解應該看得懂吧?springMVC的知識哦,@RestController表示這是一個返回字符串或者JSON數據的控制類,@RequestMapping("/hello")是頁面請求路徑 :http://localhost:8080/hello springboot的端口號默認爲8080,當然可用取配置文件裏面改哦
@RestController public class HelloController { @RequestMapping("/hello") public String hello() { return "Hello World,"; } }
-
編寫完畢,運行啓動類,打開瀏覽器,輸入網址進行訪問。
啓動成功如下,然後到瀏覽器訪問地址http://localhost:8080/hello ,圖中所指就是當前項目啓動所用的端口號,沒配置默認爲8080
至此,一個超級簡單的Springboot就完成,接下來,介紹一個
花裏胡哨的東西,哈哈哈
到項目下的 resources 目錄下新建一個banner.txt ,然後編寫LOGO的banner圖案。
圖案可以到:https://www.bootschool.net/ascii 這個網站自定義生成,然後拷貝到文件中即可!
然後再次啓動項目,你會看到圖案~~~
最後
有空再更新自己關於Springboot其它的知識與運用~~
PS:https://youth.hcode.top 這個網站是用Springboot開發的哦~