框架高頻面試題

2022-06-23 14:03:11 字數 2008 閱讀 7032

常用的 5 個註解

如何使用 springmvc 完成 json 操作:

在返回值前面加"forward:“就可以讓結果**,譬如"forward:user.do?name=method4” 在返回值前面加"redirect:“就可以讓返回值重定向,譬如"redirect:

直接在方法的形參中宣告request,springmvc就自動把request物件傳入

mybatis的快取分為一級快取和二級快取,一級快取放在session裡面,預設就有,二級快取放在它的名稱空間裡,預設是開啟的,使用二級快取屬性類需要實現serializable序列化介面(可用來儲存物件的狀態),可在它的對映檔案中配置

① 建立sqlsessionfactory

② 通過sqlsessionfactory建立sqlsession

③ 通過sqlsession執行資料庫操作

④ 呼叫session.commit()提交事務

⑤ 呼叫session.close()關閉會話

有聯合查詢和巢狀查詢,

聯合查詢是幾個表聯合查詢,只查詢一次,通過在resultmap裡面配置collection節點配置一對多的類就可以完成;

巢狀查詢是先查一個表,根據這個表裡面的結果的外來鍵id,去再另外一個表裡面查詢資料,也是通過配置collection,但另外一個表的查詢通過select節點配置

有聯合查詢和巢狀查詢,

聯合查詢是幾個表聯合查詢,只查詢一次,通過在resultmap裡面配置association節點配置一對一的類就可以完成;

巢狀查詢是先查一個表,根據這個表裡面的結果的外來鍵id,去再另外一個表裡面查詢資料,也是通過association配置,但另外一個表的查詢通過select屬性配置

對於一些複雜的查詢,我們可能會指定多個查詢條件,但是這些條件可能存在也可能不存在。mybatis 中用於實現動態 sql 的元素主要有:

if

choose / when / otherwise

trim

where

setforeach

sqlsession:封裝了對資料 增刪改查的方法

sqlsession是通過sqlsessionfactory建立的

sqlsessionfactory是通過sqlsessionfactorybuild建立的

sqlsessionfactorybuild 是建立sqlsessionfactory時使用的.一旦建立成功後就不需要sqlsessionfactorybuild的,因為sqlsession是通過sqlsessionfactory建立的,可以可以當做工具類使用

sqlsessionfactory是一個介面, 類裡過載了opensession的不同的方法使用範圍是在整個執行範圍內,一旦建立可以重複使用.可以當做單例項物件來管理

sqlsession是面向使用者的一個運算元據庫的介面 每個執行緒都應該有自己的sqlsession 並且sqlsession不可以共享. 執行緒是不安全的,開啟一個sqlsession用完之後就要關閉

spring core

框架的最基礎部分,提供 ioc 容器,對 bean 進行管理。

2.spring context

基於 bean,提供上下文資訊,擴充套件出jndi、ejb、電子郵件、國際化、校驗和排程等功能。

3.spring dao

提供了jdbc的抽象層,它可消除冗長的jdbc編碼和解析資料庫廠商特有的錯誤**,還提供了宣告性事務管理方法。

4.spring orm

提供了常用的“物件/關係”對映apis的整合層。 其中包括jpa、jdo、hibernate、mybatis 等。

5.spring aop

提供了符合aop alliance規範的面向方面的程式設計實現。

6.spring web

提供了基礎的 web 開發的上下文資訊,可與其他 web 進行整合。

7.spring web mvc

提供了 web 應用的 model-view-controller 全功能實現。