Springboot基礎(chǔ)學(xué)習(xí)之初識SpringBoot
一、圖示
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)和面向接口實現(xiàn)松耦合
3.基于切面(AOP)和慣例進(jìn)行聲明式編程
4.通過切面和模板減少樣式代碼
四、springboot
springboot基于spring開發(fā),springboot本身不提供spring框架的核心特性以及擴(kuò)展功能,只是用于快速、敏捷地開發(fā)新一代基于spring框架的應(yīng)用程序。也就是說,它并不是用來替代spring的解決方案,而是和spring框架緊密結(jié)合用于提升spring開發(fā)者體驗的工具。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)入。
開始以后我們能看到項目里面有這些內(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項目已經(jīng)被啟動了!
我們在這個主函數(shù)文件目錄下,新建以下老熟悉的文件夾:
這樣就和之前我們項目開發(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:項目具體依賴,這里包含了spring-boot-starter-web用于實現(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基礎(chǔ)學(xué)習(xí)之初識SpringBoot的文章就介紹到這了,更多相關(guān)SpringBoot基礎(chǔ)學(xué)習(xí)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Java基礎(chǔ)之SpringBoot整合knife4j
- 淺談Java springboot日志管理
- Java實戰(zhàn)之用springboot+netty實現(xiàn)簡單的一對一聊天
- SpringBoot+JavaMailSender實現(xiàn)騰訊企業(yè)郵箱配置
- Java安全框架——Shiro的使用詳解(附springboot整合Shiro的demo)
- Java springboot 整合 Nacos的實例代碼
- java、spring、springboot中整合Redis的詳細(xì)講解
- SpringBoot整合JavaMail通過阿里云企業(yè)郵箱發(fā)送郵件的實現(xiàn)
- Java springboot項目jar發(fā)布過程解析
- java(包括springboot)讀取resources下文件方式實現(xiàn)
- SpringBoot集成JmsTemplate(隊列模式和主題模式)及xml和JavaConfig配置詳解
- Java下SpringBoot創(chuàng)建定時任務(wù)詳解
- Java springboot Mongodb增刪改查代碼實例
- SpringBoot java-jar命令行啟動原理解析
- IDEA2020.1啟動SpringBoot項目出現(xiàn)java程序包:xxx不存在
- Springboot項目javax.validation使用方法詳解
相關(guān)文章
SpringBoot+SpringSecurity+JWT實現(xiàn)系統(tǒng)認(rèn)證與授權(quán)示例
本文主要介紹了SpringBoot+SpringSecurity+JWT實現(xiàn)系統(tǒng)認(rèn)證與授權(quán)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08Spring?MVC請求轉(zhuǎn)發(fā)與請求重定向的示例詳解
轉(zhuǎn)發(fā)指服務(wù)器接收請求后,從一個資源跳轉(zhuǎn)到另一個資源中,請求轉(zhuǎn)發(fā)是一次請求,不會改變?yōu)g覽器的請求地址,這篇文章主要介紹了Spring?MVC請求轉(zhuǎn)發(fā)與請求重定向的相關(guān)知識,需要的朋友可以參考下2023-09-09mybatis中一對一關(guān)系association標(biāo)簽的使用
這篇文章主要介紹了mybatis中一對一關(guān)系association標(biāo)簽的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03SpringBoot自動配置實現(xiàn)流程詳細(xì)分析
這篇文章主要介紹了SpringBoot自動配置原理分析,SpringBoot是我們經(jīng)常使用的框架,那么你能不能針對SpringBoot實現(xiàn)自動配置做一個詳細(xì)的介紹。如果可以的話,能不能畫一下實現(xiàn)自動配置的流程圖。牽扯到哪些關(guān)鍵類,以及哪些關(guān)鍵點(diǎn)2022-12-12Spring數(shù)據(jù)源及配置文件數(shù)據(jù)加密實現(xiàn)過程詳解
這篇文章主要介紹了Spring數(shù)據(jù)源及配置文件數(shù)據(jù)加密實現(xiàn)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05Java判斷IP地址為內(nèi)網(wǎng)IP還是公網(wǎng)IP的方法
這篇文章主要介紹了Java判斷IP地址為內(nèi)網(wǎng)IP還是公網(wǎng)IP的方法,針對tcp/ip協(xié)議中保留的三個私有地址進(jìn)行判斷分析,是比較實用的技巧,需要的朋友可以參考下2015-01-01