天天看點

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

部落格對應視訊講解位址:https://www.bilibili.com/video/av81735277/

一、模闆引擎時代

1、jsp

本質:jsp是伺服器響應頁面、jsp是嵌入java代碼的html、jsp的本質就是servlet

缺點:前端開發人員必須會後端,後端開發人員必須會前端。導緻大批全棧工程師的出現

2.  FreeMarker

2.  FreeMarker

FreeMarker是一個免費的模闆引擎,一個基于模闆生成文本輸出的通用工具,使用純Java編寫,它被設計用來生成HTML Web頁面,特别是基于MVC模式的應用程式。雖然FreeMarker具有一些程式設計的能力,但通常由Java程式準備要顯示的資料,由FreeMarker生成頁面,通過模闆顯示準備的資料(如下圖)

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

3、thymeleaf

Springboot預設是不支援JSP的,預設使用thymeleaf模闆引擎。

日常開發中,我們經常會将導航欄,頁尾,菜單等部分提取成模闆供其它頁面使用。

在Thymeleaf 中,我們可以使用

th:fragment

屬性來定義一個模闆。

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<div th:fragment="commonFooter" class="fly-footer">
 
    <P> <a href="https://blog.csdn.net" target="_blank" rel="external nofollow"  target="_blank">我的 CSDN 賬戶</a> </P>
    <P>	<a href="https://github.com" target="_blank" rel="external nofollow"  target="_blank">我的 GitHub 賬戶</a></P>
 
</div>
</html>
           

二、前後端分離時代

前後端分離 完整的請求過程

1. 前端通過http請求後端API

2. 後端以json形式傳回前段資料

3. 前端生成使用者界面[如html,ios,android]

優點:

  1. 各司其職
  • 前端:視覺層面,相容性,前端性能的優化
  • 後端: 并發, 可能性,性能
  1. 解耦,前端和後端均易于擴充
  2. 後端靈活搭配各類前端 - 如安卓等
  3. 提高使用者體驗
  4. 前端+後端可完全并行開發,加快開發效率

需要解決的問題:

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

前端的話隻需要傳輸http資料到後端,後端接收http資料時候,然後然後前端需要的資料。

後端主要是需要考慮兩個問題:

1、前後端的跨域問題,因為前端啟動一個伺服器,域名或端口号不同,這個時候就會遇到跨域問題,後端解決辦法:請看我另外一篇文章

https://blog.csdn.net/qq_37909508/article/details/97791302

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

2、前後端資料互動的問題,前端通過ajax或者axios去請求,背景接收的話使用responsebody來接收json資料,這裡需要注意的是,前端傳過來的請求有兩種方式,一種是在URL後面帶着請求資料(如get,delete等)這個時候直接使用普通方式

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

如果是放入到請求體當中的,首先可以是前端通過qs将請求體的資料轉換到URL後面請求,背景直接如下寫就行:

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

如果前端請求的資料放入到請求體,後端需要這樣寫

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

或者

前後端分離曆史追溯及如今流行的前後端分離接口實作一、模闆引擎時代二、前後端分離時代

@RequestBody主要用來接收前端傳遞給後端的json字元串中的資料的(請求體中的資料的);

@RequestBody(required=false)表示後面的User對象可以不傳入!!!

具體示範代碼已上傳至

https://github.com/1359533909/Front-EndAndBack-EndOfSimpleSystem.git

繼續閱讀