大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 2020年Java面試題框架部分集

2020年Java面試題框架部分集

更新時間:2019-12-20 14:08:18 來源:動力節點 瀏覽2415次

SSH三大框架的概述

  SSH為 struts+spring+hibernate的一個集成框架,是目前較流行的一種Web應用程序開源框架。

  集成SSH框架的系統從職責上分為四層:表示層、業務邏輯層、數據持久層和域模塊層(實體層),以幫助開發人員在短期內搭建結構清晰、可復用性好、維護方便的Web應用程序。

  struts標簽庫:Struts2默認的表達式語言是OGNL(Object-Graph Navigation Language),通過它可以存取對象的任意屬性、調用對象的方法、遍歷整個對象的結構圖、實現字段類型轉換等功能。

  JSP: HTML文件中插入Java程序段和JSP標記。

  web.xml: Struts2核心過濾器和監聽器

  struts.xml: 管理應用中的Action映射,及Action處理結果和物理資源之間的映射。

  applicationContext.xml: 整合了struts和Hibernate。

  .hbm.xml:O/R Mapping(Object Relational Mapping)映射文件,實體和表的映射關系通過XML來描述的文件。在項目啟動的時候加載到內存中。

  PO:Persistent Object,持久化對象

  整體的調用關系:JSP–Action–Service–DAO–PO–數據庫

  什么是struts2

  Struts2是一個基于MVC設計模式的Web應用控制層框架,功能就是完成jsp頁面和后臺java代碼的傳值和跳轉。

  Struts2的運行原理

  1:當前臺發送一個以規定后綴相同的請求時 如:.action struts核心控制器會對其進行過濾攔截 核心控制器StrutsPrepareAndExecuteFilter

  2:核心控制器攔截請求后會根據請求的路徑找到對應的java代碼,通過路徑中的類名(!前的部分)匹配struts.xml中action標簽中的name屬性來找到具體訪問的類,!后的部分匹配類中的方法名

  3:當java類中完成處理邏輯會返回一個字符串,根據字符串匹配struts.xml中result標簽的name屬性,然后跳轉到result標簽內容指定的頁面。

  Spring

  簡單來說,spring是一個輕量級的控制反轉(IOC)和面向切面(AOP)的容器框架。

  ◆ 輕量——從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個大小只有1MB多的JAR文件里發布。并且Spring所需的 處理開銷也是微不足道的。此外,Spring是非侵入式的:典型地, Spring應用中的對象不依賴于Spring的特定類。

  ◆ 控制反轉——Spring通過一種稱作控制反轉(IOC)的技術促進了松 耦合。當應用了IOC,一個對象依賴的其它對象會通過被動的方式傳遞 進來,而不是這個對象自己創建或者查找依賴對象。 這也是說spring是非侵入式的,動態注入對象,讓一個對象的創建 不用new,可以自動生成,這就是利用JAVA里的反射,反射其實就是 在運行時動態的去創建、調用對象及其方法,spring就是在運行時,跟 xml spring的配置文件來動態的創建對象,和調用對象里面的方法 反射技術的使用使得我們不再像原始的工廠方法模式那樣創建對象。反 射可以非常靈活的根據類的名稱創建一個對象。所以spring只使用了 Prototype和Singleton這兩個基本的模式。

  ◆ 面向切面——Spring提供了面向切面編程的豐富支持,允許通過分離 應用的業務邏輯與系統級服務(例如審計(auditing)和事務 (transaction)管理,主要實現對事務的管理)進行內聚性的開發,其 機理來自于代理模式。應用對象只實現它們應該做的——完成業務邏輯 ——僅此而已。它們并不負責(甚至是意識)其它的系統級關注點,例 如日志或事務支持。

  ◆ 容器——Spring包含并管理應用對象的配置和生命周期,在這個意義上它是一種容器,你可以配置你的每個bean如何被創建——基于一個可配置原型(prototype),你的bean可以創建一個單獨的實例或者每次需要時都生成一個新的實例——以及它們是如何相互關聯的。然而,Spring不應該被混同于傳統的重量級的EJB容器,它們經常是龐大與笨重的,難以使用。Spring是一個容器,凡是在容器里的對象才會有Spring所提供的這些服務和功能。凡是在spring的配置文件里面配置了,才能被spring管理;并享用spring提供的服務 。

  ◆ 框架——Spring可以將簡單的組件配置、組合成為復雜的應用。在Spring中,應用對象被聲明式地組合,典型地是在一個XML文件里。Spring也提供了很多基礎功能(事務管理、持久化框架集成等等),將應用邏輯的開發留給了你。 所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測試的代碼。它們也為Spring中的各種模塊提供了基礎支持。

  談Spring這個問題的時候,首先Spring中最為重要的無非就是IOC和AOP,而對IOC來講,你講一下IOC的定義,IOC就是說對象本身的創建不依賴應用本身,而是依賴于外部容器,如果沒有IOC那么我們在我們的業務類,要調用DAO的方法,那么不得不做的一個動作就是創建一個DAO的實現類的實例,而創建這個對象本身是跟業務無關的,而這樣違反了“高內聚,低耦合”,使類與類的聯系非常緊密了。即使你不用new,你使用工廠模式,使用單利模式,也跟上面說的效果是一樣的,而Spring本身就是一個大工廠,他幫我們造對象,幫我們管理bean對象,它幫我們注入我們所需的bean對象,這樣對于以后的維護來講,變的更為方便,也把與業務本身無關的東西提取出來了。體現了低耦合。而AOP本身就是一種思想,意為面向切面編程,而Spring對AOP做了部分實現,(舉例說明)如果沒有AOP,比如我們開發的系統中有發郵件,寫日志,可想而知,系統中發郵件,寫日志絕對的不是在一個地方用到,那么怎么辦,肯定是在業務中寫著重復的代碼,而且干著與業務無關的事情,也就是說讓發郵件,寫日志跟業務一起混合在一起,那么這樣肯定是不合理的。那么該怎么辦,因此Spring提供了AOP,在你想寫日志的方法給你切開,加入日志的操作,剛剛說spring是大工廠,那么對于spring的AOP來講,我更加喜歡把它比喻成化妝師,只有你讓spring幫你化妝,就能達到你意想不到的效果,總的來講spring的AOP技術,他幫我們做很多與業務無關的操作,讓業務層次更加清晰。

  Spring AOP事務的描述:

  在applicationContent.xml里通過aop:config里面先設定一個表達式,設定對service里那些方法 如:對add* ,delete*,update*等開頭的方法進行事務攔截。我們需要配置事務的傳播(propagation=“REQUIRED”)特性,通常把增,刪,改以外的操作需要配置成只讀事務(read-only=“true”).只讀事務可以提高性能。之后引入tx:advice,在tx:advice引用 transactionManager(事務管理),在事務管理里再引入sessionFactory,sessionFactory注入 dataSource,最后通過aop:config引入txAdvice。

  事物的7種傳播特性

  opropagation_requierd:如果當前沒有事務,就新建一個事務,如果已存在一個事務中,加入到這個事務中,這是最常見的選擇。

  opropagation_supports:支持當前事務,如果沒有當前事務,就以非事務方法執行。

  opropagation_mandatory:使用當前事務,如果沒有當前事務,就拋出異常。

  opropagation_required_new:新建事務,如果當前存在事務,把當前事務掛起。

  opropagation_not_supported:以非事務方式執行操作,如果當前存在事務,就把當前事務掛起。

  opropagation_never:以非事務方式執行操作,如果當前事務存在則拋出異常。

  opropagation_nested:如果當前存在事務,則在嵌套事務內執行。如果當前沒有事務,則執行與propagation_required類似的操作

  Spring默認的事物傳播行為是propagation_requierd

2020年Java面試題框架部分集

      以上就是動力節點Java培訓機構小編介紹的“2020年Java面試題框架部分集”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

相關推薦

最新最全java面試題及答案(初級到高級)

史上最全的中高級JAVA工程師面試題及答案匯總

Java高級開發工程師面試題

2019史上最全java面試題題庫大全800題

哪有資深java工程師面試題

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲综合精品一区二区三区中文 | 日韩 欧美 亚洲 | 亚洲综合亚洲 | 精品免费视频 | 久久99久久精品久久久久久 | 亚洲日日做天天做日日谢 | 欧美成人四级剧情在线播放 | 日韩久久免费视频 | 欧美天天性影院 | 欧美一级免费 | 亚洲国产高清美女在线观看 | 国产一级持黄大片99久久 | 手机看一级片 | 亚洲天天做日日摸天天做 | 亚洲欧美日韩一区 | 国产精品亚洲欧美一区麻豆 | 涩涩视频免费 | 久久精品国产亚洲妲己影院 | 99re这里有精品| 欧美极品福利视频在线播放 | 免费视频网站在线观看黄 | 中文字幕日本在线观看 | 久久精品啪啪嗷嗷叫 | 欧美激情一区二区 | 天天干天天色综合网 | 色射色| 国产成人在线免费视频 | 欧美宗合网 | 国产精品免费观看网站 | 一级香蕉免费毛片 | 快色视频网站 | 99久久精品免费观看国产 | 天天摸天天干天天操 | 亚洲有色 | 91在线精品视频 | 久久精品卫校国产小美女 | 六月婷婷色 | 性欧美日韩 | 久久一本一区二区三区 | 最新欧美精品一区二区三区不卡 | 天天干天天碰 |