1年2年工作經(jīng)驗(yàn)java面試題精煉匯總_第1頁
1年2年工作經(jīng)驗(yàn)java面試題精煉匯總_第2頁
1年2年工作經(jīng)驗(yàn)java面試題精煉匯總_第3頁
1年2年工作經(jīng)驗(yàn)java面試題精煉匯總_第4頁
1年2年工作經(jīng)驗(yàn)java面試題精煉匯總_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

java什么是事務(wù)掌握?答:事務(wù)掌握就是將一系列操作當(dāng)成一個(gè)不行拆分的規(guī)律單元,保證這些操作要么都成功,要么都失敗。在關(guān)系數(shù)據(jù)庫SQLSQL事務(wù)是恢復(fù)和并發(fā)掌握的根本單位。4ACID〔atomicity〕。一個(gè)事務(wù)是一個(gè)不行分割的工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。隔離性〔isolation〕。一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。即一個(gè)事務(wù)內(nèi)部的操作及使用的數(shù)據(jù)對并發(fā)的其他事務(wù)是隔離的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能相互干擾。長久性〔durability〕。持續(xù)性也稱永久性〔permanence〕,指一個(gè)事務(wù)一旦提交,它對數(shù)據(jù)庫中數(shù)據(jù)的轉(zhuǎn)變就應(yīng)當(dāng)是永久性的。接下來的其他操作或故障不應(yīng)當(dāng)對其有任何影響。事務(wù)有兩種操作:提交,回滾過濾器的作用?過濾器是一個(gè)對象,可以傳輸懇求或修改響應(yīng)。它可以在懇求到達(dá)Servlet/JSPServlet/JSPServlet/JSP就可以寫一個(gè)過濾器類,然后在部署描述文件〔web.xml〕Servlet/JSPservletservlet。一個(gè)過濾器實(shí)現(xiàn)java.servlet.Filter1.voidinit(FilterConfigconfig)throwsServletException:在service2.voiddestroyservice3.VoiddoFilter(ServletRequestreq,ServletResponseres,FilterChainchain)throwsIOException,ServletException;為什么要引入連接池?首先在Web開發(fā)中,假設(shè)使用JDBC連接數(shù)據(jù)庫,那么每次訪問懇求都必需建立連接——翻開數(shù)據(jù)庫——存取數(shù)據(jù)庫——的次數(shù)比較少,那么還不至于有多大的影響,但是假設(shè)頻繁的進(jìn)展數(shù)據(jù)庫操作,那么系統(tǒng)的性能將會(huì)受到很大影響。地關(guān)閉Connection、Statement和ResultSet資源,那么每次執(zhí)行都會(huì)留下一些沒有關(guān)閉的連接,這些連接失去了引用很高的代碼中消滅這種泄漏,那么數(shù)據(jù)庫連接資源將被耗盡,影響系統(tǒng)的正常運(yùn)轉(zhuǎn)。為了解決上述問題,因此就引入了數(shù)據(jù)庫連接池技術(shù)。用一句話概括數(shù)據(jù)庫連接池技術(shù)那就是負(fù)責(zé)安排、治理和釋放數(shù)據(jù)庫連接。JSPINCLUDEINCLUDEINCLUDEinclude<%@includefile=””%>1Servletinclude<jsp:includefile=””><%@includefile=””%>包含動(dòng)態(tài)頁面,并且可以帶參數(shù))11Servlet了一個(gè)是2Servlet動(dòng)態(tài)連接〔JSPServlet〕1、sessionsessionserverServletRequest.getSession(true)JSP@session=”false”%>session,則JSPServletSessionsession=ServletRequest.getSession(true);JSPsessionsession,JSP2、sessiona.Session.invalidate;b.距離上一次收到客戶端發(fā)sessionidsessionc.效勞器進(jìn)程被停頓〔session〕3session嚴(yán)格的講,做不到這一點(diǎn)??梢宰鲆稽c(diǎn)努力的方法是在全部的客戶端頁面里使用javascriptwindow.oncolosesession段仍舊無能為力。4SessionListenersessionsessionlistener,SessionlistenerSessionBindingListener,SessionActivationListenerSessionAttributeListener。5sessionsessionserverWeblogicServersessioniPlanetsessionsessionException,很驚異。6cookieformaction,URL,具體做法參見“://e-docs.bea/wls/docs70/webapp/sessions.html#100770“://e-docs.bea/wls/docs70/webapp/sessions.html#1007707sessionsessionsessionidcookie8sessionid回給客戶端,同時(shí)保存在session里,客戶端提交表單時(shí)必需把這個(gè)id也返回效勞器,程序首先比較返回的id與保存javascriptwindow.openid,id,以防window.open9WeblogicServersessionsession.setValueWeblogicServersessionsessionsessionsessioniPlanet6SP13721cookie消滅這一問題的大局部緣由都是程序的錯(cuò)誤,最常見的就是在一個(gè)應(yīng)用程序中去訪問另外一個(gè)應(yīng)用程序。我們在下一節(jié)爭論這個(gè)問題。6.<%…%>和<%!…%>的區(qū)分?JSPJavaJSPServlet的成員變量什么是WEBSERVICE?及它的常用開發(fā)框架?WebServiceWebServiceInternet、XML、SOAP〔簡潔對象訪問協(xié)議〕、WSDLWebService〔Windows,Linux〕中使用。(1).跨平臺(tái)。(2).SOAPXML火墻,不需要防火墻為了程序而單獨(dú)開一個(gè)“漏洞”。此外,WebService實(shí)現(xiàn)的技術(shù)難度要比CORBA和DCOM小得多。WebServiceC/S,WebService缺點(diǎn):(1).WebServiceXMLCORBAwebserviceNetIDEMicrosoftVisualStudio2023Xfire“:///“:///。IDEEclipse3.2〔JDK1.5〕J2EE5.0Jax-wsNetBeansIDEJ2EE5.0webservice“:///“:///NetBeans6.0。官方的下載文件Tomcat6.0J2EE5.0。Axis開發(fā)過程比較.NetVS2023glassfish。Spring),Axis性能比較1、CXFNetBeansIDEwebservice;小數(shù)據(jù)量的處理兩者差不2、對于.NetwebserviceJavawebservice〔前IIS〕。結(jié)論CXFwebservicewebserviceAxis,RPC式。請具體說J2EE是怎樣分層的?1.客戶端層(ClientTier)規(guī)律可分為基于Web的和非基于Web的客戶端兩種狀況2.Web層WebWeb組件組成,J2EEWebJSPServletsWebJavaBeansWeb戶端。(BusinessTier)EJBEJBEJB般狀況下很多開發(fā)商把Web效勞器和EJB效勞器產(chǎn)品結(jié)合在一起公布,稱為應(yīng)用效勞器.EJB層用來實(shí)現(xiàn)企業(yè)級(jí)信息系統(tǒng)的業(yè)務(wù)規(guī)律。這是企業(yè)級(jí)應(yīng)用的核心,由運(yùn)行在業(yè)務(wù)層中的EJBBean把數(shù)據(jù)送到企業(yè)信息系統(tǒng)層存儲(chǔ)起來。同樣,一個(gè)Bean也可以從企業(yè)信息系統(tǒng)取出數(shù)據(jù),發(fā)送到客戶端程序。業(yè)務(wù)層中的EJB要運(yùn)行在容器中,容器解決了底層的問題,如事務(wù)處理、生命周期、狀態(tài)治理、多線程安全治理、資源池等4.企業(yè)信息系統(tǒng)層〔EnterpriseInformationSystemtier)處理企業(yè)系統(tǒng)軟件,包括企業(yè)根底系統(tǒng)、數(shù)據(jù)庫系統(tǒng)及其他遺留的系統(tǒng)。J2EE〔ConnectorArchitecture)J2EEAPI。EJB容器供給的效勞有很多,包括:1.2.3.數(shù)據(jù)庫連接池45.驗(yàn)證與訪問掌握6.長久性EJBEJB〔EnterpriseBeanProvider〕、應(yīng)用組合者〔ApplicationAssembler〕、部署者〔Deployer〕、EJB〔EJBServerProvider〕、EJB〔EJBContainerProvider〕、系統(tǒng)治理〔SystemAdministrator〕Remote〔Local〕接口、Home〔LocalHome〕接口,Bean你對spring+struts的耦合方式和原理?調(diào)用業(yè)務(wù)托付接口來調(diào)用具體的業(yè)務(wù)組件的實(shí)例,避開掌握層與業(yè)務(wù)層的藕合帶來的維護(hù)DAOIoCDAODAODAO層組件。CommonsBeanUtilsBeangetsetBeanUtils裝。CommonsCodecBase64,URL,SoundxCommonsCLImainstring[]需要解析。你可以預(yù)先定義好參數(shù)的規(guī)章,然后就可以CLICommonsCollectionsCommonsConfiguration說明:這個(gè)工具是用來幫助處理配置文件的,支持很多種存儲(chǔ)方式1.Propertiesfiles2.XMLdocuments3.Propertylistfiles(.plist)4.JNDI5.JDBCDatasource6.Systemproperties7.Appletparameters8.ServletparametersCommonsDBCPpool,TomcatCommonsDbUtils說明:我以前在寫數(shù)據(jù)庫程序的時(shí)候,往往把數(shù)據(jù)庫操作單獨(dú)做一個(gè)包CommonsFileUploadCommonsClient說明:這個(gè)工具可以便利通過編程的方式去訪問網(wǎng)站。ApacheCommonBeanUtil是一個(gè)常用的在對象之間復(fù)制數(shù)據(jù)的工具類,著名的web開發(fā)框架struts就是依靠于它進(jìn)展ActionForm的創(chuàng)立。SpringSpringSpring它任何一個(gè)獨(dú)立的局部,而它的架構(gòu)又是內(nèi)部全都。因此你能從你的學(xué)習(xí)中,得到最大的JDBC象。Spring的抱負(fù)框架。SpringSpringframework內(nèi)容。SpringIoC/DI,Spring〔invasSpring從框架中脫離,而幾乎不用任何的修改,反過來說,組件也可以簡潔的方式參加至框架中,使得組件甚至框架的整合變得簡潔。Spring最為人重視的另一方面是支持AOP〔Aspect-OrientedProgramming〕,然而AOP框架只是Spring支持的一個(gè)子框架,說Spring框架是AOP框架并不是一件適當(dāng)?shù)拿枋?,人們對于SpringAOPSpringMVCWebSpringSpringSpring也供給其它方面的整合,像是長久層的整合如JDBC、O/RMapping工具〔Hibernate、i、事務(wù)處理等等,SpringSpring程序框架SpringIoCIoC,直觀地講,就是容器掌握程序之間的關(guān)系,而非傳統(tǒng)實(shí)現(xiàn)中,由程序代碼直接操控。這也就是所謂“掌握反轉(zhuǎn)”的概念所在。掌握權(quán)由應(yīng)用代碼中轉(zhuǎn)到了外部容器,掌握權(quán)的轉(zhuǎn)移是所謂反轉(zhuǎn)。IoC〔DependencyInjection〕”。從名字上理解,所謂依靠注入,即組件之間的依靠關(guān)系由容器在運(yùn)行期打算,形象地說,即由容器動(dòng)態(tài)地將某種依靠關(guān)系注入到組件之中。IoC而言,“依靠注入”確實(shí)更加準(zhǔn)確的描述了這種設(shè)計(jì)理念。所謂依靠注入,即組件之間的依靠關(guān)系由容器在運(yùn)行期打算,形象的來說,即由容器動(dòng)態(tài)的將某種依靠關(guān)系注入到組件之中。任何重要的系統(tǒng)都需要至少兩個(gè)相互合作的類來完成業(yè)務(wù)規(guī)律。通常,每個(gè)對象都要自己負(fù)責(zé)得到它的合作〔依靠〕對IoC,對象的依靠都是在對象創(chuàng)立時(shí)由負(fù)責(zé)協(xié)調(diào)系統(tǒng)中各個(gè)對象的外部實(shí)體供給的,這樣使軟件組件松散連接成為可能。AjaxAjaxJavaScript技術(shù)和XMLRequest對象放在Web表單和效勞器之間。當(dāng)用戶填寫表單時(shí),數(shù)據(jù)JavaScript代碼而不是直接發(fā)送給效勞器。相反,JavaScript代碼捕獲表單數(shù)據(jù)并向效勞器發(fā)送懇求。同時(shí)用戶屏幕上的表單也不會(huì)閃耀、消逝或延遲。換句話說,JavaScript發(fā)出。更好的是,懇求是異步發(fā)送的,就是說JavaScript代碼〔和用戶〕不用等待效勞器的響應(yīng)。因此用戶可以連續(xù)輸入數(shù)據(jù)、滾動(dòng)屏幕和使用應(yīng)用程序。JavaScript代碼〔Web表單中〕,后者打算如何處理這些數(shù)據(jù)。它可以快速更表單數(shù)據(jù),讓人感覺應(yīng)用程序是馬上完成的,表單沒有提交或刷而用戶得到了數(shù)據(jù)。JavaScript代碼甚至可以對收到的數(shù)據(jù)執(zhí)行某種計(jì)算,再發(fā)送另一個(gè)懇求,完全不需要用戶干預(yù)!這就是XMLRequest的強(qiáng)大之處。它可以依據(jù)需要自行與效勞器進(jìn)展交互,用戶甚至可以完全不知道幕后發(fā)生的一切。結(jié)果就是類似于桌面應(yīng)用程序的動(dòng)態(tài)、快速響應(yīng)、高交WebWeb開源框架:struts、hiberante、spring、dwr工具:eclipse3.4、MyEclipse5.5、JBuild、NetBeans、JBossIDE2.0、DreamweaveJava——Javajava.util.*java.io———–供給了通過數(shù)據(jù)流、對象序列以及文件系統(tǒng)實(shí)現(xiàn)的系統(tǒng)輸入、輸出Javaappletjava.awt.*Javajava.math.*java.rmi———-供給了與遠(yuǎn)程方法調(diào)用相關(guān)的全部類javax.naming.*———-供給了用于實(shí)現(xiàn)網(wǎng)絡(luò)通訊應(yīng)用的全部類java.test———包括以一種獨(dú)立于自然語言的方式處理文本、日期、數(shù)字和消息的類和接口Web:struts1.2、struts2.0、springmvc、WebWorkstruts實(shí)現(xiàn)MVC模式,構(gòu)造清楚,使開發(fā)者只關(guān)注業(yè)務(wù)規(guī)律的實(shí)現(xiàn).tag,Struts(Taglib),如能敏捷動(dòng)用,則能大大提高開發(fā)效率。另外,就目前國內(nèi)的JSPJSPStruts頁面導(dǎo)航.頁面導(dǎo)航將是今后的一個(gè)進(jìn)展方向,事實(shí)上,這樣做,使系統(tǒng)的脈絡(luò)更加清楚。通過一個(gè)配置文件,即可把握整個(gè)系統(tǒng)各局部之間的聯(lián)系,這對于后期的維護(hù)有著莫大的好處。尤其是當(dāng)另一批開發(fā)者接手這個(gè)工程時(shí),這種優(yōu)勢表達(dá)得更加明顯。Exception處理機(jī)制.數(shù)據(jù)庫鏈接池治理缺點(diǎn):1forwardjspjsp,需要配置十次struts,而且還不包括有時(shí)候名目、文件變更,需要重修改forward,留意,每次修改配置之后,要求重部署整個(gè)工程,而tomcate的苦惱有多大。thread-safeaction資源都必需統(tǒng)一同步,這個(gè)就引起了線程安全的問題。ActionWebWebJunitStrutsTestCaseStringCommons-BeanutilsClass的。StrutsActionServletRequestServletResponse,全部它擺脫不ServletJSTL,JSTLJSTLCollectionStrutsAction,假設(shè)想掌握它的執(zhí)行挨次將會(huì)格外困難。甚至你要重去寫Servlet8ActionStrutsActionclasshierarchies,很難在action進(jìn)展操作。FormActionDispatchAction),換一句話說:在Struts,strutsapplicationevent,applicationeventcomponenteventStruts重要的表單對象ActionForm是一種對象,它代表了一種應(yīng)用,這個(gè)對象中至少包含幾個(gè)字段,這些字段是JspinputStrutsJavaScriptspringmvc優(yōu)缺點(diǎn):他是一個(gè)典型的可以說是教科書式的mvcstructsmvcmvcspringtapestryservlettapestrystructs比較簡潔可以理解。WebWork缺點(diǎn):文檔例如很少、客戶端驗(yàn)證技術(shù)不成熟17.介紹幾種常用的設(shè)計(jì)模式:業(yè)務(wù)托付模式:表示層組件將與業(yè)務(wù)層效勞交互。這樣,業(yè)務(wù)層轉(zhuǎn)變會(huì)使表示層也需要轉(zhuǎn)變。業(yè)務(wù)托付模式可以解決這個(gè)問題。業(yè)務(wù)托付模式的目的就是削減表示層和業(yè)務(wù)層的耦合,隱蔽業(yè)務(wù)效勞的各種簡單實(shí)現(xiàn)細(xì)節(jié),

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論