1. 程式人生 > 其它 >今日份的學習筆記:2021.08.13

今日份的學習筆記:2021.08.13

今日份的學習筆記:2021.08.13

SpringMVC學習筆記(一)

SpringMVC入門

SpringMVC概述

SpringMVC是一個基於MVC設計模式的Web層框架
M是指Model(模型),V是指View(檢視),C是指Controller(控制器),分別對應持久層、表現層、業務層

SpringMVC設計模式

MVC,全名是(Model View Controller)的縮寫,是一種軟體設計模式。具體含義:
1、Model:模型,用來處理資料,一般是一個實體類,例如User類;
2、View:檢視,用來顯示介面,可以是JSP或Html;
3、Controller:控制器,用來決定哪個介面來展示模型;(其實是業務處理器)

SpringMVC在專案中的作用

JavaEE開發規範規定,一個Java web專案應該要分為三層:
1、WEB層:頁面資料顯示、頁面跳轉排程
2、業務層:業務處理和功能邏輯、事務控制
3、持久層:資料存取和封裝、和資料庫打交道

SpringMVC分層模式概述

三層架構:持久層、業務層、表現層(Web層)

持久層

資料的持久化操作
持久層 ≈ 資料層 ≈ 資料庫
可以理解成將資料儲存在資料庫或者硬碟等可以長期儲存的裝置裡,不像放在記憶體中那樣斷電就消失了,也就是把資料存在持久化裝置上
mybatis就是持久層

業務層

業務邏輯的處理
負責表現層和持久層的資料傳遞和邏輯處理
業務層 ≈ 控制器

表示層

對資料的展示和使用者的輸入
表示層 ≈ 檢視層

流程

01 使用者看到View
02 View —( 使用者操作:點選按鈕等 )— > Controller
03 Controller —— > Model : 呼叫Model中的方法
04 Model —— > Controller : 返回資料
05 Controller—— > View : 傳資料到View,更新View
06 使用者看到更新後的View

Springboot常見註解(二)

@RequestParam

@RequestParam(value=”引數名”,required=”true/false”,defaultValue=””)
 
value:引數名
 
required:是否包含該引數,預設為true,表示該請求路徑中必須包含該引數,如果不包含就報錯。
 
defaultValue:預設引數值,如果設定了該值,required=true將失效,自動為false,如果沒有傳該引數,就使用預設值

將請求引數繫結到你控制器的方法引數上(是springmvc中接收普通引數的註解)

@ModelAttribute

@ModelAttribute

用於將方法的引數或方法的返回值繫結到指定的模型屬性上,並返回給Web檢視

@RequiresPermissions

@RequiresPermissions("")
shiro許可權相關注解

@Validated

@Validated

@Validated是一套幫助我們繼續對傳輸的引數進行資料校驗的註解,通過配置Validation可以很輕鬆的完成對資料的約束

@Service

@Service

用於標記業務層元件

@Transactional

@Transactional

用於事務管理

@Table

@Table

宣告此物件對映到資料庫的資料表,通過它可以為實體指定表(talbe)

@Column

@Column

用來標識實體類中屬性與資料表中欄位的對應關係

@NotBlank

@NotBlank

只能作用在String上,不能為null,而且呼叫trim()後,長度必須大於0

@Size、@Length、@Max、@Min

@Size ——> (Array,Collection,Map,String)
Length(min=, max=)
@Max
@Min

@Size驗證物件長度是否在給定的範圍之內
@Length驗證字串長度是否在給定的範圍之內
@Min 驗證 Number 和 String 物件是否大等於指定的值
@Max 驗證 Number 和 String 物件是否小等於指定的值
max和min是對所填的“數字”是否大於或小於指定值,這個“數字”可以是number或者string型別。長度限制用length。

@JsonFormat

@JsonFormat

用於資料格式化

@MyBatisDao

@MyBatisDao

Java知識補充(一)

this 和 super

this

什麼是this?

this是自身的一個物件,代表物件本身,可以理解為:指向物件本身的一個指標

this的用法

01 普通的直接引用
02 形參與成員名字重名,用this來區分
03 引用建構函式

super

什麼是super?

super可以理解為是指向自己超類(父類)物件的一個指標,而這個超類指的是離自己最近的一個父類

super的用法

01 普通的直接引用

super相當於是指向當前物件的父類,通過super.XXX來引用父類的成員

02 子類中的成員變數或方法與父類中的成員變數或方法同名

03 引用建構函式

super(引數):呼叫父類中的某一個建構函式 
 // first sentence
this(引數):呼叫本類中另一種形式的建構函式
 // first sentence