更新時間:2020-04-23 14:51:59 來源:動力節點 瀏覽2535次
springmvc和struts2的區別?
機制:springmvc的入口是servlet,struts2的入口是filter
性能:springmvc會比struts2快一點。springmvc是基于方法設計,struts2是基于類,每次發一次請求都會實例一個action,每個Action都會被注入屬性。
參數傳遞:struts2是在接受參數的時候,可以采用屬性來接收參數,這家說明可以讓多個方法共享
攔截器機制:struts2有自己的interceptor機制,springmvc用的是獨立的AOP方式,strtus2的配置文件還是比springmvc大,springmvc使用簡潔,springMVC比struts2開發效率要高.
struts2工作原理?
客戶端初始化一個執行servlet的請求
這個請求經過一系列的過濾器,被FilterDispatcher調用,詢問ActionMapper來決定是否調用Action
FilterDispatcher把請求的處理交給ActionProxy
ActionProxy通過Configuraction Manager詢問相關的配置文件,找到需要的Action類
ActionProxy創建ActionInvocation的實例
ActionInvocation調用Action前后的攔截器
Action執行完畢后,根據struts.xml配置文件找到對應的視圖頁面
Hibernate工作原理?
讀取并解析配置文件
創建SessionFactory
打開Session
創建事務:transaction
持久化操作
提交事務
關閉Session
關閉SessionFactory
為什么要用spring?
spring能夠很好的和各大框架整合
spring通過IOC容器管理了對象的創建和銷毀工廠模式
在使用hiberna,mybatis的時候,不用每次都編寫提交的事務的代碼,可以使用spring的AOP來管理事務AOP其實就是一個動態代理的實現
聲明式事務和編程式事務
mybatis的優缺點?
優點:SQL寫在XML中,便于統一管理和優化
提供映射標簽,支持對象和數據庫的orm字段關系映射
可以對SQL進行優化
缺點:SQL工作量大
mybagtis移植姓不好
不支持級聯
談談SSH整合?
struts(表示層)+spring(業務層)+hibernate(持久層)
struts是一個表示層的框架,主要用于接收請求,分發請求。struts其實屬于MVC中的VC層次的
hibernate是一個持久層的框架,主要負責與關系數據庫的操作
spring是一個業務層的框架,是一個整合的框架,能夠很好的黏合表示層和持久層。
maven是什么?有什么作用?
是一個項目管理、構建工具
作用:幫助下載jar尋找依賴,幫助下載依賴熱部署、熱編譯
WEB前端優化?
減少HTTP請求的數量(合并css、js、圖片)
利用瀏覽器的緩存機制
利用GZIP壓縮機制:只針對文本類資源有效
把CSS文件放在HTML開頭
把javascript文件放在HTML結尾
避免CSS表達式(判斷瀏覽器)
使用javascript壓縮
減少DNS查找
避免重定向
使用ajax
安全性測試
利用安全性測試技術,找到潛在的漏洞
事務隔離級別(4種)
Serializable(串行化):一個事務在執行過程中完全看不到其他事物對數據庫所做的更新(事務執行的時候不允許別的事務并發執行,事務只能一個接著一個地執行,而不能并發執行)
Repeatable Read(可重復讀):一個事務在執行過程中可以看到其它事務已經提交的新插入的記錄,但是不能看到其它事務對已有記錄的更新
Read Commited(讀已提交數據):一個事務在執行過程中可以看到其它事務已經提交的新插入的記錄,而且能看到其它事務已經提交的對已有記錄的更新。
Read Uncommitted(讀未提交數據):一個事務在執行過程中可以看到其它事務沒有提交的新插入的記錄的更新,而且能看其它事務沒有提交到對已有記錄的更新
以上就是動力節點java培訓機構的小編針對“程序員面試java架構師面試寶典”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習