【寫在前面】
- 長期做基于Spring Boot的企業應用,計劃將與應用相關的技術點,通過簡介、步驟、示例的方式,記錄并分享出來,用于作為Spring Boot入門的記錄與教程
- 計劃的內容有:
- Spring簡介
- 第一個Spring Boot專案
- Maven簡介
- 使用RESTful API提供后端服務
- 自動注入與自動裝配常用注解
- application.properties
- Lombok
- Actuator和Admin
- Swagger
- AOP
- ControllerAdvice
- Interceptor
- Filter
- Application、Session、Request&Response
- 檔案上傳和檔案下載
- 資料訪問
- DTO
- 標準回應封裝
- 復雜業務下的資料訪問
- 快取
- 后端HTTP請求
- 定時任務
- 訊息佇列
- 打包和部署
工具準備
- JDK 1.8
- IntellJ IDEA
- MySQL 5.7社區版
- Navicat
后端技術概要
- 現在企業級應用中,多采用前后端分離開發形式
- 在Java技術堆疊的后端開發中,多以Spring Boot開發REST介面形式提供服務
- Java、Java Web、Spring為Spring Boot應用提供了基石
- 要很好的開發一個后端專案,需要掌握與Spring Boot相關的很多內容,包括
-
Maven:通過pom.xml配置快速引入依賴包,快速構建與發布
-
集成資料訪問組件:MyBatis及MyBatis plus集成與使用
-
集成快取:EhCache、Redis快取工具使用
-
Swagger:提供可閱讀了后端介面
-
Git:IDE中集成進行代碼管理
-
Tomcat:專案發布到Tomcat
-
Nginx:專案在Linux運行并通過Nginx反射代理出去
-
Spring簡介
概述
- Spring是一個支持快速開發Java企業級應用程式的框架,可以和大量的開源框架集成
- Spring是一個IoC和AOP容器框架
- 由20多個模塊組成,1300多個檔案或組件構成,這些組件被分別整合在核心容器(Core Container)、AOP(Aspect Oriented Programming)、設備支持(Instrumentation)、資料訪問及集成(Data Access/Integration)、Web、訊息處理(Messaging)、Test等模塊集合
- 在Spring基礎上誕生了很多專案,如Spring Data、Spring Security、Spring MVC、Spring Boot等

IoC(Inversion of Control)
- 控制反轉,是一種設計思想,將原來用戶主動創建所有物件,轉變為,大部分重要的物件使用容器創建,并由容器管理物件的生命周期,減少代碼間的耦合
- 核心邏輯是,通過借助“第三方”,來實作具有依賴關系的物件間解耦
- Spring中提供了完備的IoC容器,也稱Spring容器,即“第三方”
- 下圖左邊為傳統new物件方式使用物件;右邊為借助"第三方”Spring容器方式通過自動注入、自動裝配使用

DI(Dependency Injection)
- 依賴注入,控制反轉的一種實作方式或另一種表述方式
- 當物件對其他物件有依賴的時候,通過配置或自動注入并裝配使用;如Student物件需要Class物件的時候,Class物件可以通過屬性注入的方式注入到Student物件
Spring特點
優點
- Spring屬于低侵入,代碼污染極低
- 使用Spring容器,降低組件之間的耦合,更專注于業務邏輯
- AOP的很好支持,方便面向切面編程
- 提供眾多服務組件,事務管理等功能,對主流的框架提供集成支持,如Hibernate,Struts2,JPA等
- Spring的高度可開放性,不強制應用完全依賴于Spring,可自由選擇Spring部分或全部來實作業務
缺點
- 重量級框架,里面包含了很多組件,比如資料訪問、MVC、事務、AOP等,入門門檻高
- 集成和配置復雜,尤其是集成第三方組件或框架時,需要進行XML配置
- 構建和部署復雜,比如要依賴第三方的Web服務器
示例
創建一個Spring控制臺應用(使用IDEA)
創建步驟
- File選單中選擇New Project
- 在選單中選擇Spring,只勾選 Spring,不選擇其他項
- 專案創建完成后,相應的Spring的jar包都加載到依賴中了,存盤在lib目錄,也可以往里面添加自己的Jar包
- 在src目錄下創建一個物體類(也可以是相應的業務類),如UserEntity
- 在src目錄下創建一個Spring組態檔(右鍵New->XML Configuration File->Spring Config),并配置相關bean,如針對UserEntity的bean
- 在src目錄下創建一個帶main方法的類,使用ClassPathXmlApplicationContext,加載XML中的bean配置,并通過getBean獲取容器中的物件bean
具體內容見附件1-spring-console-demo:https://files.cnblogs.com/files/sangrei/1-spring-console-demo.zip?t=1667127156,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/523160.html
標籤:其他
