對SSM的理解——wsdchong

對SSM的理解

前言:

前置知識和後續知識,知識是承前啓後的。

從三個方面分析,首先從其本質分析,畢竟萬變不離其宗,任何東西不是無中生有的,它總有一個前身。分析本質,有利於我們知道這個是幹什麼的;

然後將與前身相比,它的優越性,畢竟學習是有性價比的。通過對比分析優越性,有利於我們知道我們用這個的理由在哪;

最後分析如何學習。有利於我們掌握這個東西。

[toc]

一、spring的理解

Spring給我的印象是面向對象編程的升級版,核心思想是IOC和AOP,以反射爲原理,通過bean和註解來提高Java編程效率。

IOC使得代碼的每一個class獨立出來,使用對象的時候,不用像以前一樣,還需要主動去new一個,現在可通過依賴注入使bean容器幫助自動創建,提高代碼的可複用性。

AOP將分散在各個方法中的重複代碼提取出來,如事務、日誌、異常等。大大提高了開發效率和代碼維護性。

總之,與傳統的面向對象編程OOP相比,面向切面編程AOP提高了代碼的複用性,可維護性,可讀性。

所以spring的前置知識是下圖中Java的反射和註解。可以通過下面這篇博客來進行全面科普,掌握的話,需要自行深入。

https://blog.csdn.net/qq_36894974/article/details/106010941
在這裏插入圖片描述
spring給我的感覺就是Java的進一步發展,從面向對象發展到面向切面,目的是提高代碼複用性,讓更多人更易上手;提高開發效率和維護性,讓開發和維護更快;

入手spring可以先學習DI(構造注入到設值注入)、bean裝配(XML到annotation)、AOP(XML到註解),對spring的基本概念有初步掌握,然後學習JDBCTemplate類的使用,事務的使用,對數據庫和事務有spring的初步應用。

感覺spring的前置知識的OOP編程的Java,後置知識是springboot的使用(在spring的基礎上把配置優化了)。不過學好spring,歸根結底需要學好Java。

講反射:https://blog.csdn.net/Mr_wxc/article/details/105812627

Spring的基本使用:https://blog.csdn.net/weixin_42875245/article/details/106034031

二、mybatis的理解

Mybatis給我的感覺是JDBCTemplate的升級版,核心思想是對象關係映射ORM,通過配置文件和映射文件爲實現映射,通過sqlsessionFactory和sqlsession來使用映射。

配置文件用來配置properties、setting、environment、mapper等;

映射文件用於寫映射語句,如select、insert、update、delete、SQL、resultMap;

sqlsessionFactory是單個數據庫映射關係經過編譯後的內存鏡像,用於創建session。

Sqlsession是應用程序與持久層之間執行交互操作的一個單線程對象,用於執行持久化操作。Sqlsession對象包含數據庫中所有執行SQL操作的方法。

與JDBCTemplate相比,在XML中進行配置和映射,使用更形象,便於新手入門;每次使用只需調用已設好的映射,降低重複代碼,大大提高編程效率。

Mybatis的本質的SQL的映射,歸根結底還是需要把SQL語句學好,把數據庫學好。數據庫和SQL學好了,mybatis的作用只是橋樑,聯通數據庫和應用程序直接的橋樑。

數據庫的學習:《數據庫系統概論》等。

MySQL的學習:《MySQL必知必會》等。

MySQL的基本使用:https://blog.csdn.net/weixin_42875245/article/details/105912850

Mybatis的基本使用:

三、springmvc的理解

Springmvc給我的感覺是servlet的進階版,核心思想是全部請求統一用一個servlet(dispatcherservlet)去做請求與控制。用spring來寫servlet。

Springmvc的執行流程:

1前端控制器dispatchServlet攔截到請求,調用處理器映射器handlerMapping來處理;2處理器映射器根據請求,生成處理器對象返回給前端控制器;

3前端控制器收到信息選擇合適的處理器適配器handleAdapter;4處理器適配器執行處理器,也就是程序中編寫的後端控制器controller;5後端控制器執行完,返回視圖名給處理器適配器,適配器又返回給前端控制器;

6前端控制器收到信息選擇合適的視圖解析器viewResolve;7視圖解析器解析後,返回視圖給前端控制器;

8前端控制器對view進行渲染。渲染完成後返回給客戶端瀏覽器。

@requestbody的使用:https://blog.csdn.net/justry_deng/article/details/80972817

通過初步使用,我覺得Springmvc的核心是配置文件(設置前端控制器)和後端控制器controller(@requestMapping)。

與servlet相比,有註解功能的springmvc可讀性更好,重複代碼更少,編程體驗更佳。

要向學好springmvc需要從兩方面入手,一是學好servlet和HTTP,二是學好spring或者springboot;

HTTP:https://blog.csdn.net/qq_36894974/article/details/103930478

Servlet:包括servlet、jsp、網絡編程

Springmvc:入門、數據綁定、json數據綁定、攔截器

2020/5/18寫。至於爲什麼現在纔在CSDN上發佈呢。因爲畢業論文查重居然還有CSDN的對比庫。MMP。而我畢業論文有部分內容是這些。萬一對比庫把這個包括了,我就降重就更難了了。

才疏學淺,請大佬指錯。後期會不斷修改

更新地址:GitHub

更多內容請關注:CSDNGitHub

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章