一、圖示
spring再簡化:SpringBoot-jar:內(nèi)嵌tomacat;微服務(wù)架構(gòu)!
二、springboot是什么
spring是一個為了解決企業(yè)級應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的,簡化開發(fā)
三、spring是如何簡化開發(fā)的?
為了降低Java開發(fā)的復(fù)雜性,Spring提供了以下四種關(guān)鍵策略:
1.基于pojo的輕量級和最小侵入性編程
2.通過IOC、依賴注入(DI)和面向接口實(shí)現(xiàn)松耦合
3.基于切面(AOP)和慣例進(jìn)行聲明式編程
4.通過切面和模板減少樣式代碼
四、springboot
springboot基于spring開發(fā),springboot本身不提供spring框架的核心特性以及擴(kuò)展功能,只是用于快速、敏捷地開發(fā)新一代基于spring框架的應(yīng)用程序。也就是說,它并不是用來替代spring的解決方案,而是和spring框架緊密結(jié)合用于提升spring開發(fā)者體驗(yàn)的工具。springboot以約定大于配置的核心思想,默認(rèn)幫我們進(jìn)行了很多設(shè)置,多數(shù)springboot應(yīng)用只需要很少的spring配置。同時它集成了大量常用的第三方庫配置(例如Redis、MongoDB、Jpa、RabbitMQ、Quartz等等),springboot應(yīng)用中這些第三方庫幾乎可以零配置的開箱即用。所以,springboot是整合了所有的框架,它不是什么新框架。
五、第一個spingboot程序
環(huán)境:
jdk1.8
maven 3.8.1
mysql 5.7
springboot 2.4.5
打開idea,點(diǎn)擊File-New-Project
選中spring initializr
點(diǎn)擊next
之后寫的內(nèi)容和maven中就一致了,再next
然后開始選需要的依賴,這里我們選Web里的springWeb依賴,這樣就會幫我自動下載一些web相關(guān)的依賴并導(dǎo)入。
開始以后我們能看到項(xiàng)目里面有這些內(nèi)容:
我們打開這個SpringbootstudyApplication
package com.hj.springbootstudy;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//程序的主入口!不能刪也不能改,相當(dāng)于main!
@SpringBootApplication
public class SpringbootstudyApplication {
//springApplication
public static void main(String[] args) {
SpringApplication.run(SpringbootstudyApplication.class, args);
}
}
發(fā)現(xiàn)他是主函數(shù)文件,我們運(yùn)行這個主函數(shù),能夠發(fā)現(xiàn)服務(wù)被啟動了!
然后瀏覽器輸入localhost:8080
能夠看到我們的web項(xiàng)目已經(jīng)被啟動了!
我們在這個主函數(shù)文件目錄下,新建以下老熟悉的文件夾:
這樣就和之前我們項(xiàng)目開發(fā)看著就差不多了
再來看看pom.xml的內(nèi)容
<?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.5</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.hj</groupId>
<artifactId>springbootstudy</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>springbootstudy</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--web依賴:tomcat,dispatcherServlet.xml都由依賴做-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--所有的springboot依賴都是spring-boot-starter開頭的-->
<!--單元測試-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<!--打jar包插件-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
這里包括了:
- parent:繼承spring-boot-starter-parent的依賴管理,控制版本與打包內(nèi)容等
- dependencies:項(xiàng)目具體依賴,這里包含了spring-boot-starter-web用于實(shí)現(xiàn)HTTP接口(該依賴中包含了Spring MVC),官網(wǎng)對它的描述是:使用Spring MVC構(gòu)建Web(包括RESTful)應(yīng)用程序的入門在,使用Tomcat作為默認(rèn)嵌入式容器。spring-boot-starter-test用于編寫單元測試的依賴包。
- build:構(gòu)建配置部分,默認(rèn)使用了spring-boot-maven-plugin,配合spring-boot-starter-parent就可以把spring boot應(yīng)用打包成jar來直接運(yùn)行
如果spring-boot-starter-web依賴沒有被導(dǎo)入,你會發(fā)現(xiàn)一運(yùn)行就結(jié)束了
到此這篇關(guān)于 SpringBoot 入門學(xué)習(xí)之認(rèn)識什么是 SringBoot 以及如何使用 IDEA 創(chuàng)建一個 SpringBoot 項(xiàng)目,想要了解更多相關(guān)SpringBoot 基礎(chǔ)學(xué)習(xí)內(nèi)容請搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,也希望大家以后多多支持!