全部課程
發(fā)布時間: 2020-06-24 11:34:50
【Java技術(shù)】SpringBoot入門基礎(chǔ)?
一、 SpringBoot誕生的背景
1. 在SpringBoot出現(xiàn)以前,使用spring框架配置web應(yīng)需要大量的xml配置。
2. 隨著web項目集成軟件的不斷增多,xml配置文件也在不斷地增多,項目的依賴管理也越發(fā)的復(fù)雜。
3. xml配置文件不但復(fù)雜,而且絕大部分屬于模板配置,很多的配置是不斷重復(fù)的。對新手非常的不友好。
二、 SpringBoot改變了什么?
1. SpringBoot的目標(biāo)不在為已解決的問題提供新的解決方案,簡化對已有技術(shù)的開發(fā)體驗。
2. 使配置更加簡單
3. 使開發(fā)變得簡單
4. 使部署變得簡單
三、 SpringBoot的主要特性
1. 遵循約定大于配置的原則,簡化配置
2. 脫離XML配置文件,使用注解實現(xiàn)配置
3. 內(nèi)嵌Servlet容器,項目打包成jar包,運行更加方便
4. 提供啟動器,使得配置場景化,方便包管理,簡化配置
5. 快速與第三方類庫整合,方便易用
四、 SpringBoot與Spring,SpringMVC對比
1. SpringBoot項目并不是替換Spring、SpringMVC,而是使他們用起來更加簡單
2. Spring框架最核心的特性就是依賴注入DI和控制反轉(zhuǎn)IOC
3. Spring MVC提供了一種友好的方式來開發(fā)Web應(yīng)用程序,可以輕松開發(fā)web
4. Spring 和 Spring MVC較大的弊病在于重量級的配置,并且這些配置有很高的相似性。
5. Spring Boot期望通過結(jié)合自動配置和啟動器來解決模板化問題
6. Spring Boot提供了豐富的第三方集成,簡化開發(fā)體驗
五、 什么是SpringBoot Starter?
是一組被依賴的第三方類庫的集合:
如:引入spring-boot-starter-web,就會自動引入以下與其對應(yīng)的依賴包
1. Spring核心,beans,context上下文,AOP面向切面
2. SpringMVC
3. Jackson
4. Validation參數(shù)校驗
5. 內(nèi)嵌Servlet容器
6. 日志框架
六、 Spring Boot Starter Parent
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
所有的Spring Boot項目默認(rèn)使用spring-boot-starter-parent作為應(yīng)用程序的父項目
方便統(tǒng)一管理Java版本與依賴版本
七、 內(nèi)嵌Servlet容器
1. SpringBoot默認(rèn)打包為jar
2. 使用java -jar即可運行
3. 使得部署變得簡單,有利于服務(wù)的構(gòu)建,啟動和擴容
4. 支持其他容器作為web容器
八、 使用idea快速構(gòu)建SpringBoot項目
九、 構(gòu)建模塊化SpringBoot工程
1. 通過idea快速創(chuàng)建SpringBoot項目,刪除src目錄,并修改pom文件<!--定義全局版本號-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--父工程屬性-->
<groupId>cn.codermk</groupId>
<artifactId>springbootall</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!--子工程繼承父工程,父工程需要打包成pom-->
<packaging>pom</packaging>
<name>springbootall</name>
<description>Spring Boot2.3全家桶案例</description>
<!--加載子工程-->
<modules>
<module>helloword</module>
</modules>
2. 編寫第一個入門案例
1. 新建helloword模塊,并修改pom文件<!--繼承父模塊-->
<parent>
<groupId>cn.codermk</groupId>
<artifactId>springbootall</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<!--子工程屬性-->
<groupId>cn.codermk</groupId>
<artifactId>helloword</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!--子模塊打包成jar-->
<packaging>jar</packaging>
<name>helloword</name>
<description>HelloWord第一個測試案例</description>
2. 編寫一個controller
@Controller
public class HelloController {
@GetMapping("/hello")
@ResponseBody
public String hello(String name){
return "你好?。? + name;
}
}
3. 瀏覽器測試訪問