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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

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

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論