版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
java三大框架面試題1Action是不是線程安全的?假如不是有什么方式可以保證Action的線程安全?假如是,說明緣由
不是
聲明局部變量,或者擴(kuò)展RequestProcessor,讓每次都創(chuàng)立一個(gè)Action,或者在spring中用scope=prototype來治理
2.MVC,分析一下struts是如何實(shí)現(xiàn)MVC的
m:JavaBean或結(jié)合EJB組件或者pojo構(gòu)成
c:Action來實(shí)現(xiàn)
v:一組JSP文件及其標(biāo)簽構(gòu)成。
3.struts中的幾個(gè)關(guān)鍵對(duì)象的作用(說說幾個(gè)關(guān)鍵對(duì)象的作用)
Action:掌握器類,ActionForm:表單對(duì)象,DynaValidatorForm:動(dòng)態(tài)form,ActonMapping:配置文件中action節(jié)點(diǎn)的信息
4.說說AOP和IOC的概念以及在spring中是如何應(yīng)用的
AOP:面對(duì)方面編程,ioc:依靠注入;聲明式事務(wù)和編程式事務(wù)積極一些通用局部
5.Hibernate有哪幾種查詢數(shù)據(jù)的方式
hql查詢,sql查詢,條件查詢
6.load()和get()的區(qū)分
hibernate對(duì)于load方法認(rèn)為該數(shù)據(jù)在數(shù)據(jù)庫中肯定存在,可以放心的使用代理來延遲加載,load默認(rèn)支持延遲加載,在用到對(duì)象中的其他屬性數(shù)據(jù)時(shí)才查詢數(shù)據(jù)庫,但是萬一數(shù)據(jù)庫中不存在該記錄,只能拋特別ObjectNotFoundEcception;所說的load方法拋特別是指在使用該對(duì)象的數(shù)據(jù)時(shí),數(shù)據(jù)庫中不存在該數(shù)據(jù)時(shí)拋特別,而不是在創(chuàng)立這個(gè)對(duì)象時(shí)。由于session中的緩存對(duì)于hibernate來說是個(gè)相當(dāng)廉價(jià)的資源,所以在load時(shí)會(huì)先查一下session緩存看看該id對(duì)應(yīng)的對(duì)象是否存在,不存在則創(chuàng)立代理(load時(shí)候之查詢一級(jí)緩存,不存在則創(chuàng)立代理)。get()現(xiàn)在一級(jí)緩存找,沒有就去二級(jí)緩存找,沒有就去數(shù)據(jù)庫找,沒有就返回null;而對(duì)于get方法,hibernate肯定要獵取到真實(shí)的數(shù)據(jù),否則返回null。
7.談?wù)刪ibernate的延遲加載和openSessionInView
延遲加載要在session范圍內(nèi),用到的時(shí)候再加載;opensessioninview是在web層寫了一個(gè)
filter來翻開和關(guān)閉session,這樣就表示在一次request過程中session始終開著,保證了延遲
加載在session中的這個(gè)前提。
8.spring的事務(wù)有幾種方式?談?wù)剆pring事務(wù)的隔離級(jí)別和傳播行為。
聲明事務(wù)和編程事務(wù)
隔離級(jí)別:
-DEFAULT使用數(shù)據(jù)庫默認(rèn)的隔離級(jí)別
-READ_UNCOMMITTED會(huì)消失臟讀,不行重復(fù)讀和幻影讀問題
-READ_COMMITTED會(huì)消失重復(fù)讀和幻影讀
-REPEATABLE_READ會(huì)消失幻影讀
-SERIALIZABLE最安全,但是代價(jià)最大,性能影響極其嚴(yán)峻
和傳播行:
-REQUIRED存在事務(wù)就融入該事務(wù),不存在就創(chuàng)立事務(wù)
-SUPPORTS存在事務(wù)就融入事務(wù),不存在則不創(chuàng)立事務(wù)
-MANDATORY存在事務(wù)則融入該事務(wù),不存在,拋特別
-REQUIRES_NEW總是創(chuàng)立新事務(wù)
-NOT_SUPPORTED存在事務(wù)則掛起,始終執(zhí)行非事務(wù)操作
-NEVER總是執(zhí)行非事務(wù),假如當(dāng)前存在事務(wù)則拋特別
-NESTED嵌入式事務(wù)
9.Hibernate中的update()和saveOrUpdate()的區(qū)分.
摘自hibernate說明文檔:
saveOrUpdate()做下面的事:
假如對(duì)象已經(jīng)在本session中長久化了,不做任何事
假如另一個(gè)與本session關(guān)聯(lián)的對(duì)象擁有一樣的長久化標(biāo)識(shí)(identifier),拋出一個(gè)特別
假如對(duì)象沒有長久化標(biāo)識(shí)(identifier)屬性,對(duì)其調(diào)用save()
假如對(duì)象的長久標(biāo)識(shí)(identifier)說明其是一個(gè)新實(shí)例化的對(duì)象,對(duì)其調(diào)用save()
假如對(duì)象是附帶版本信息的(通過或)并且版本屬性的值說明其是一個(gè)新實(shí)例化的對(duì)象,save()它。否則update()這個(gè)對(duì)象
10.Spring對(duì)多種ORM框架供應(yīng)了很好的支持,簡潔描述在Spring中使用Hibernate的方法,并結(jié)合事務(wù)治理。
getHiberanteTemplate里面供應(yīng)了save,update,delete,find等方法。
簡潔說一個(gè):假如配置了聲明式事務(wù),當(dāng)執(zhí)行g(shù)etHibernateTemplate的各種方法的時(shí)候,事務(wù)會(huì)
自動(dòng)被加載
假如沒有配置事務(wù),那么以上操作不會(huì)真正的被同步到數(shù)據(jù)庫,除非配置了hibernate的
autocommit=true
8.spring的事務(wù)有幾種方式?談?wù)剆pring事務(wù)的隔離級(jí)別和傳播行為。
spring事務(wù)分兩種形式,聲明式事務(wù)和編程式事務(wù),spring供應(yīng)了一個(gè)事務(wù)的接口
PaltformTractionManager接口,針對(duì)不同的事務(wù),spring進(jìn)展了不同的實(shí)現(xiàn),對(duì)hibernate事務(wù)
的實(shí)現(xiàn)HIbernateTractionManager,對(duì)JDBC的JdbcTractionManager,
DataSourceTractionManager以及JdoTractionManager。接口platformTractionManager供應(yīng)了三
個(gè)方法,獵取事務(wù),提交和回滾的方法。
java三大框架面試題(二)
1.jsp有哪些內(nèi)置對(duì)象?作用分別是什么?分別有什么方法?
答:JSP共有以下9個(gè)內(nèi)置的對(duì)象:
request用戶端懇求,此懇求會(huì)包含來自GET/POST懇求的參數(shù)
response網(wǎng)頁傳回用戶端的回應(yīng)
pageContext網(wǎng)頁的屬性是在這里治理
session與懇求有關(guān)的會(huì)話期
applicationservlet正在執(zhí)行的內(nèi)容
out用來傳送回應(yīng)的輸出
configservlet的構(gòu)架部件
pageJSP網(wǎng)頁本身
exception針對(duì)錯(cuò)誤網(wǎng)頁,未捕獲的例外
request表示HttpServletRequest對(duì)象。它包含了有關(guān)掃瞄器懇求的信息,并且供應(yīng)了幾個(gè)用于獵取cookie,header,和session數(shù)據(jù)的有用的方法。
response表示HttpServletResponse對(duì)象,并供應(yīng)了幾個(gè)用于設(shè)置送回掃瞄器的響應(yīng)的方法(如cookies,頭信息等)
out對(duì)象是javax.jsp.JspWriter的一個(gè)實(shí)例,并供應(yīng)了幾個(gè)方法使你能用于向掃瞄器回送輸出結(jié)果。
pageContext表示一個(gè)javax.servlet.jsp.PageContext對(duì)象。它是用于便利存取各種范圍的名字空間、servlet相關(guān)的對(duì)象的API,并且包裝了通用的servlet相關(guān)功能的方法。
session表示一個(gè)懇求的javax.servlet.http.HttpSession對(duì)象。Session可以存貯用戶的狀態(tài)信息
applicaton表示一個(gè)javax.servle.ServletContext對(duì)象。這有助于查找有關(guān)servlet引擎和servlet環(huán)境的信息
config表示一個(gè)javax.servlet.ServletConfig對(duì)象。該對(duì)象用于存取servlet實(shí)例的初始化參數(shù)。
page表示從該頁面產(chǎn)生的一個(gè)servlet實(shí)例
2.jsp有哪些動(dòng)作?作用分別是什么?
(這個(gè)問題好像不重要,不明白為何有此題)
答:JSP共有以下6種根本動(dòng)作
jsp:include:在頁面被懇求的時(shí)候引入一個(gè)文件。
jsp:useBean:查找或者實(shí)例化一個(gè)JavaBean。
jsp:setProperty:設(shè)置JavaBean的屬性。
jsp:getProperty:輸出某個(gè)JavaBean的屬性。
jsp:forward:把懇求轉(zhuǎn)到一個(gè)新的頁面。
jsp:plugin:依據(jù)掃瞄器類型為Java插件生成OBJECT或EMBED標(biāo)記
59、JSP的常用指令
isErrorPage(是否能使用Exception對(duì)象),isELIgnored(是否忽視表達(dá)式)
3.JSP中動(dòng)態(tài)INCLUDE與靜態(tài)INCLUDE的區(qū)分?
答:動(dòng)態(tài)INCLUDE用jsp:include動(dòng)作實(shí)現(xiàn)
它總是會(huì)檢查所含文件中的變化,適合用于包含動(dòng)態(tài)頁面,并且可以帶參數(shù)靜態(tài)INCLUDE用include偽碼實(shí)現(xiàn),定不會(huì)檢查所含文件的變化,適用于包含靜態(tài)頁面
4、兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)分?
(下面的答復(fù)嚴(yán)峻錯(cuò)誤,應(yīng)當(dāng)是想問forward和sendRedirect的區(qū)分,究竟出題的人不是專業(yè)搞文字藝術(shù)的人,可能表達(dá)力量并不見得很強(qiáng),用詞不肯定精準(zhǔn),加之其自身的技術(shù)面也可能存在一些問題,不肯定真正將他的意思表達(dá)清晰了,嚴(yán)格意思上來講,一些題目可能根本就無人能答,所以,答題時(shí)要把握主動(dòng),只要把自己知道的表達(dá)清晰就夠了,而不要去推敲原始題目的詳細(xì)含義是什么,不要一味想著是在答題)
答:有兩種,分別為:
前者頁面不會(huì)轉(zhuǎn)向include所指的頁面,只是顯示該頁的結(jié)果,主頁面還是原來的頁面。執(zhí)行完后還會(huì)回來,相當(dāng)于函數(shù)調(diào)用。并且可以帶參數(shù).后者完全轉(zhuǎn)向新頁面,不會(huì)再回來。相當(dāng)于Goto語句。
java三大框架面試題(三)
1.Hibernate工作原理及為什么要用?
原理:1.讀取并解析配置文件2.讀取并解析映射信息,創(chuàng)立SessionFactory3.翻開Session4.創(chuàng)立事務(wù)Transation5.長久化操作6.提交事務(wù)7.關(guān)閉Session8.關(guān)閉SesstionFactory
為什么要用:1.對(duì)JDBC訪問數(shù)據(jù)庫的代碼做了封裝,大大簡化了數(shù)據(jù)訪問層繁瑣的重復(fù)性代碼。2.Hibernate是一個(gè)基于JDBC的主流長久化框架,是一個(gè)優(yōu)秀的ORM實(shí)現(xiàn)。他很大程度的簡化DAO層的編碼工作3.hibernate使用Java反射機(jī)制,而不是字節(jié)碼增加程序來實(shí)現(xiàn)透亮性。4.hibernate的性能特別好,由于它是個(gè)輕量級(jí)框架。映射的敏捷性很精彩。它支持各種關(guān)系數(shù)據(jù)庫,從一對(duì)一到多對(duì)多的各種簡單關(guān)系。
2.Hibernate是如何延遲加載?
1.Hibernate2延遲加載實(shí)現(xiàn):a)實(shí)體對(duì)象b)集合(Collection)
2.Hibernate3供應(yīng)了屬性的延遲加載功能當(dāng)Hibernate在查詢數(shù)據(jù)的時(shí)候,數(shù)據(jù)并沒有存在與內(nèi)存中,當(dāng)程序真正對(duì)數(shù)據(jù)的操作時(shí),對(duì)象才存在與內(nèi)存中,就實(shí)現(xiàn)了延遲加載,他節(jié)約了效勞器的內(nèi)存開銷,從而提高了效勞器的性能。
3.Hibernate中怎樣實(shí)現(xiàn)類之間的關(guān)系?(如:一對(duì)多、多對(duì)多的關(guān)系)
類與類之間的關(guān)系主要表達(dá)在表與表之間的關(guān)系進(jìn)展操作,它們都市對(duì)對(duì)象進(jìn)展操作,我們程序中把全部的表與類都映射在一起,它們通過配置文件中的many-to-one、one-to-many、many-to-many
4.Struts1流程:
1、客戶端掃瞄器發(fā)出HTTP懇求。2、依據(jù)web.xml配置,該懇求被ActionServlet接收。3、依據(jù)struts-config.xml配置,ActionServlet先將懇求中的參數(shù)填充到ActionForm中,然后ActionServlet再將懇求發(fā)送到Action進(jìn)展處理。4、是否驗(yàn)證,需要驗(yàn)證則調(diào)用ActionForm的validate方法,驗(yàn)證失敗則跳轉(zhuǎn)到input,勝利則連續(xù)。5、Action從ActionForm獲得數(shù)據(jù),調(diào)用javabean中的業(yè)務(wù)方法處理數(shù)據(jù)。6、Action返回ActionForward對(duì)象,跳轉(zhuǎn)到相應(yīng)JSP頁面或Action。7、返回HTTP響應(yīng)到客戶端掃瞄器。
MVC設(shè)計(jì)模式:modal:“模型”也稱業(yè)務(wù)規(guī)律,是正真完成任務(wù)的代碼,相當(dāng)與JavaBeanview:視圖,其實(shí)就是顯示界面,相當(dāng)于JSPcontroller:掌握器,他掌握模型和視圖的交互過程,相當(dāng)于servletstruts1是基于MVC設(shè)計(jì)模式hibernate是基于ORM對(duì)象關(guān)系映射
5.struts是什么?
struts1是基于JSP和servlet的一個(gè)開源的.Web應(yīng)用框架,使用的是MVC的設(shè)計(jì)模式struts2是基于webwork技術(shù)的框架,是sun和webwork公司聯(lián)手開發(fā)的一個(gè)功能特別齊全的框架,struts2和struts1沒有任何關(guān)系,是一個(gè)全新的框架
6.spring是什么?
spring是一個(gè)集成了很多第三方框架的大雜燴,其核心技術(shù)是IOC(掌握反轉(zhuǎn),也稱依靠注入)和AOP(面對(duì)切面編程)
7.hibernate是什么?
hibernate是基于ORM對(duì)象關(guān)系映射(完成對(duì)象數(shù)據(jù)到關(guān)系數(shù)據(jù)映射的機(jī)制)實(shí)現(xiàn)的,做數(shù)據(jù)長久化的工具
8.JSF是什么?
JavaServerFace是基于組件的web開發(fā)框架,跟sturts差不多的框架
9.數(shù)據(jù)庫里面的索引和約束是什么?
索引是為了提高數(shù)據(jù)的檢索速度,索引是建立在數(shù)據(jù)表上,依據(jù)一個(gè)或多個(gè)字段建立的約束是為了保持?jǐn)?shù)據(jù)的完整性,約束有非空約束,主鍵約束,外鍵約束等等。
10.spring是什么
這個(gè)問題,往往可以通過我們?yōu)槭裁匆褂胹pring這個(gè)問題來切入:AOP讓開發(fā)人員可以創(chuàng)立非行為性的關(guān)注點(diǎn),稱為橫切關(guān)注點(diǎn),并將它們插入到應(yīng)用程序代碼中。使用AOP后,公共效勞(比如日志、長久性、事務(wù)等)就可以分解成方面并應(yīng)用到域?qū)ο笊希瑫r(shí)不會(huì)增加域?qū)ο蟮膶?duì)象模型的簡單性。IOC允許創(chuàng)立一個(gè)可以構(gòu)造對(duì)象的應(yīng)用環(huán)境,然后向這些對(duì)象傳遞它們的協(xié)作對(duì)象。正如單詞倒置所說明的,IOC就像反過來的JNDI。沒有使用一堆抽象工廠、效勞定位器、單元素(singleton)和直接構(gòu)造(straight
construction),每一個(gè)對(duì)象都是用其協(xié)作對(duì)象
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車銷售工作計(jì)劃書范例(24篇)
- 建筑設(shè)計(jì)服務(wù)合同管理綱要
- 教師科研成果轉(zhuǎn)化合同樣本
- 太陽能公司美縫施工合同
- 信息技術(shù)工程師聘用合同條款
- 攀巖館租賃合同
- 體育館泵房施工協(xié)議
- 上海生物醫(yī)藥區(qū)二手房買賣協(xié)議
- 2024年小產(chǎn)權(quán)房交易合同模板
- 家具廠光伏發(fā)電項(xiàng)目施工合同
- 順產(chǎn)一病一品
- 《分子和原子》參考課件
- 河南中職語文-基礎(chǔ)模塊上冊(cè)-(高教版)第一單元測(cè)試題含答案
- 設(shè)備維修保養(yǎng)人員專業(yè)素質(zhì)培養(yǎng)
- 27《一個(gè)粗瓷大碗》(教學(xué)設(shè)計(jì))統(tǒng)編版語文三年級(jí)上冊(cè)
- 學(xué)前兒童聽說游戲活動(dòng)(學(xué)前兒童語言教育活動(dòng)課件)
- 培訓(xùn)機(jī)構(gòu)校長競聘
- 企業(yè)微信指導(dǎo)手冊(cè)管理員版
- 孫子兵法中的思維智慧智慧樹知到期末考試答案2024年
- 臨床試驗(yàn)方案偏離處理流程
- 乳腺癌一病一品
評(píng)論
0/150
提交評(píng)論