


版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、J2EE簡答題1、簡述J2EE的四層模型。運行在客戶端機器上的客戶層組件;運行在J2EE服務器上的Web層組件;運行在J2EE服務器上的業(yè)務邏輯層組件;運行在EIS服務器上的企業(yè)信息系統(tǒng)層軟件2、什么是對象持久化?即把數(shù)據(jù)(如內(nèi)存中的對象)保存到可永久保存的存儲設備中(如磁盤)。持久化的主要應用是將內(nèi)存中的數(shù)據(jù)存儲在關系型的數(shù)據(jù)庫中,當然也可以存儲在磁盤文件中、XML數(shù)據(jù)文件中等等。3、簡述一下ORMAPPING,為什么我們使用它?ORM(ObjectRelationalMapping)是一種為了解決面向對象與關系型數(shù)據(jù)庫存在的互不匹配的現(xiàn)象的技術。簡單說:ORM是通過使用描述對象和數(shù)據(jù)庫之間
2、映射的元數(shù)據(jù),將Java程序中的對象自動持久化到關系數(shù)據(jù)中。本質(zhì)上就是將數(shù)據(jù)從一種形式轉換到另外一種形式。原因:用它來架起對象和關系型數(shù)據(jù)庫的橋梁,可解決對象層次的映射、對象關系的映射以及對象的持久化問題。4、簡述一下如何使用Hibernate實現(xiàn)對象持久化的過程(可畫圖或用偽碼描述)STEP1創(chuàng)建Configuration對象。在這一步中主要為了進行配置文件的裝載操作,讀取所有的配置文件并進行解析、STEP2:創(chuàng)建SessionFactory對象。通過創(chuàng)建好的Configuration對象可以創(chuàng)建一個sessionFactory對象的實例,同時是生成Session對象實例的工廠,他在整個應用
3、中應該是,唯一的。STEP3創(chuàng)建Session對象。Session對象類似丁數(shù)據(jù)庫的連接對象,可以理解為與數(shù)據(jù)庫建立的一個連接,但是他的功能要比JDBC中的Connection對象豐富很多。STEP4開始一個事務。在Java中定義一個事務操作的開始,這是使用Hibernate進行持久化操作必不可少的步驟STEP5進行持久化操作。在這個步驟中可以讀取或者保存Java對象。STEP6結束事務。在操作完成之后還要進行顯式的結束事務的操作。STEP7:關閉Session0類似丁釋放數(shù)據(jù)庫的連接。5、為什么要實現(xiàn)序列化?1、序列化以某種存儲形式使自定義對象持久化2、序列化將對象轉換為可傳輸方式從一個地方
4、傳遞到另一個地方3、序列化使程序更具維護性6、比較下sessionFactory中的opensession()和getcurrentsession()方法1、getCurrentSession創(chuàng)建的session會和綁定到當前線程,而openSession不會。2、getCurrentSession創(chuàng)建的線程會在事務回滾或事物提交后自動關閉,而openSession必須手動關閉7、比較一下session中的load()和get()方法,以及如何保證每次都是從數(shù)據(jù)庫讀取而不是在緩存中讀?load()和get()方法均可以根據(jù)指定的實體類和id從數(shù)據(jù)庫讀取記錄,并返回與之對應的實體對象。其區(qū)別在丁
5、:如果未能發(fā)現(xiàn)符合條件的記錄,get方法返回null,而load方法會拋出一個ObjectNotFoundException。Load方法可返回實體的代理類實例,而get方法永遠直接返回實體類。load方法可以充分利用內(nèi)部緩存和二級緩存中的現(xiàn)有數(shù)據(jù),而get方法則僅僅在內(nèi)部緩存中進行數(shù)據(jù)查找,如沒有發(fā)現(xiàn)對應數(shù)據(jù),將越過二級緩存,直接調(diào)用SQL完成數(shù)據(jù)讀取。8、Action接受用戶參數(shù)輸入,主要有哪幾種方式?我們常用的是哪一種?Action屆性接收參數(shù);2.Domainmodal(域模型)接收參數(shù);3.Modaldriven接收參數(shù)。常用第一種跟第二種9、在struts中實現(xiàn)一個action有哪
6、幾種方式?最常用的是哪種?1. 定義一個普通的類,類中只要有一個publicStringexecute()方法且返回一個字符申即可。定義一個類,實現(xiàn)Action接口,xwork2.Action這個包的3繼承xwork2.ActionSupport這個類。最常用的是第三種10、在struts.xml中Result的type常用的有四種類型1)dispatcher2)redirect3)chain4)redirectAction哪些是服務器跳轉?哪些是客戶端跳轉?dispatcher和chain是服務器端跳轉,所以客戶端只發(fā)起一次請求redirect和redirectAction是客戶端跳轉,所以
7、客戶端發(fā)起兩次請求。11、j2ee是技術還是平臺還是框架?它主要包含哪些技術,列舉并簡單描述2到3個技術?J2EE本身是一個標準,一個為企業(yè)分布式應用的開發(fā)提供的標準平臺。J2EE也是一個框架,包括JDBC、JNDI、RMI、JMS、EJBJTA等技術。JDBC:是一種用丁執(zhí)行SQL語句的JavaAPI,可以為多種關系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語舌編寫的類和接口組成。RMI:RMI協(xié)議調(diào)用遠程對象上的方法。它使用了序列化方式在客戶端和服務器端傳遞數(shù)據(jù)。RMI是一種被EJB使用的更底層的協(xié)議。12、MVC的各個部分都有哪些技術來實現(xiàn)?如何實現(xiàn)?MVC是ModelViewControl
8、ler的簡寫。"Model"代表的是應用的業(yè)務邏輯(通過JavaBean,EJB組件實現(xiàn)),"View"是應用的表示面(由JSP頁面產(chǎn)生),"Controller”是提供應用的處理過程控制(一般是一個Servlet),通過這種設計模型把應用邏輯,處理過程和顯示邏輯分成不同的組件實現(xiàn)。這些組件可以進行交互和重用。13、什么是JNDI?JNDI是SUN公司提供的一種標準的Java命名系統(tǒng)接口,JNDI提供統(tǒng)一的客戶端API,通過不同的訪問提供者接口JNDISPI的實現(xiàn),由管理者將JNDIAPI映射為特定的命名服務和目錄系統(tǒng),使得Java應用程序可以
9、和這些命名服務和目錄服務之間進行交互。14、舉例并簡單描述2到3種動態(tài)網(wǎng)頁開發(fā)技術。1、PHP,是英文超文本預處理語言HypertextPreprocessor的縮寫。PHP是一種HTML內(nèi)嵌式的語言,是一種在服務器端執(zhí)行的嵌入HTML文檔的腳本語言,語言的風格有類似丁C語言,被廣泛地運用。2、ASP,它是微軟公司開發(fā)的代替CGI腳本程序的一種應用,它可以與數(shù)據(jù)庫和其它程序進行交互,是一種簡單、方便的編程工具。ASP的網(wǎng)頁文件的格式是.asp,現(xiàn)在常用丁各種動態(tài)網(wǎng)站中。15、簡單描述瀏覽器輸入http:/localhost:8088/myFirstweb/Firstservlet訪問web資源
10、的過程(也就是servlet工作的時序圖)(提示,解釋地址用端口號和地址訪問服務器-訪問資源)。1. 瀏覽器會將請求打包成http請求數(shù)據(jù)包,發(fā)送給web服務器,web服務器中的servlet引擎解析請求并封裝為一個HttpServletRequest對象(包含了請求數(shù)據(jù)),同時創(chuàng)建個HttpServletResponse對象。2. servlet調(diào)用servlet的service()方法,并將HttpServletReque,HttpServletResponse對象作為參數(shù)傳遞給servlet實例servlet可以從HttpServletRequest對象中獲得請求數(shù)據(jù),并處理,當然,se
11、rvlet也可能要訪問數(shù)據(jù)庫。然后將處理之后的結果放到HttpServletResponse中。3. servlet引擎從HttpServletResponse中取數(shù)據(jù),并將數(shù)據(jù)打包成http數(shù)據(jù)包發(fā)送給瀏覽器。16、開發(fā)servlet服務器程序三種方法。開發(fā)servlet有三種方法:a,實現(xiàn)servlet接口;b,繼承GenericServet;c,繼承HttpServlet17、通過httpservlet去開發(fā)servlet,需要重寫doGet和doPost方法。這是常用的方式,請簡述Get與Post方法的區(qū)別。(1) get是從服務器上獲取數(shù)據(jù),post是向服務器傳送數(shù)據(jù)。在客戶端,Ge
12、t方式在通過URL提交數(shù)據(jù),數(shù)據(jù)在URL中可以看到;POST方式,數(shù)據(jù)放置在HTMLHEADER內(nèi)提交。對丁get方式,服務器端用Request.QueryString獲取變量的值,對丁post方式,服務器端用Request.Form獲取提交的數(shù)據(jù)。(2) GET方式提交的數(shù)據(jù)最多只能有1024字節(jié),而POST則沒有此限制。安全性問題。使用Get的時候,參數(shù)會顯示在地址欄上,而Post不會。所以,還是使用post為好。18、簡述http返回包中的狀態(tài)碼200,302,404,500的意義。200請求已成功,請求所希望的響應頭或數(shù)據(jù)體將隨此響應返回。302請求的資源現(xiàn)在臨時從不同的URI響應請求
13、。404請求失敗,請求所希望得到的資源未被在伺服器上發(fā)現(xiàn)。500伺服器遇到了一個未曾預料的狀況,導致了它無法完成對請求的處理.19、簡述請求重定向(response.sendRedirect)和請求轉發(fā)(getRequestDispatcherforward)的區(qū)另U。1、forward。只能將請求轉發(fā)給同一個Web應用中的組件,而sendRedirect()方法不僅可以重定向到當前應用程序中的其他資源,還可以重定向到其他站點的資源。2、sendRedirect()方法重定向的訪問過程結束后,瀏覽器地址欄中顯示的URL會發(fā)生改變,由初始的URL地址變成重定向的目標URL;而調(diào)用forward(
14、)方法的請求轉發(fā)過程結束后,瀏覽器地址欄保持初始的URL地址不變。.專業(yè)專注3、forward。方法的調(diào)用者與被調(diào)用者之間共享相同的request對象和response對象;而sendRedirect()方法調(diào)用者和被調(diào)用者使用各自的request對象和response對象,它們屆丁兩個獨立的請求和響應過程。20、Hibernate拒絕連接、服務器崩潰的原因?最少寫三個?db沒有打開網(wǎng)絡連接可能出了問題連接配置錯了驅動的driver,url是否都寫對了LIB下加入相應驅動,數(shù)據(jù)連接代碼是否有誤數(shù)據(jù)庫配置可能有問題當前聯(lián)接太多了,服務器都有訪問人數(shù)限制的服務器的相應端口沒有開,即它不提供相應的服
15、務9hibernate有哪些緩存,分別怎么使用?10你對hibernate的了解到了一個什么樣的程度?11寫出一個sql語句體現(xiàn)hibernate中一對多的關系21、Update()和saveOrUpdate()的區(qū)別?update()方法操作的對象必須是持久化了的對象。也就是說,如果此對象在數(shù)據(jù)庫中不存在的話,就不能使用update()方法。saveOrUpdate()方法操作的對象既可以使持久化了的,也可以使沒有持久化的對象。如果是持久化了的對象調(diào)用saveOrUpdate()則會更新數(shù)據(jù)庫中的對象;如果是未持久化的對象使用此方法,則save到數(shù)據(jù)庫中。22、Hibernate的三種狀態(tài)之
16、間如何轉換?當對象由瞬時狀態(tài)(Transient)一save()時,就變成了持久化狀態(tài)。當我們在Session里存儲對象的時候,實際是在Session的Map里存了一份,也就是它的緩存里放了一份,然后,乂到數(shù)據(jù)庫里存了一份,在緩存里這一份叫持久對象(Persistent)。Session一Close()了,它的緩存也都關閉了,整個Session也就失效了,這個時候,這個對象變成了游離狀態(tài)(Detached),但數(shù)據(jù)庫中還是存在的。當游離狀態(tài)(Detached)update()時,乂變?yōu)榱顺志脿顟B(tài)(Persistent)。當持久狀態(tài)(Persistent)delete()時,乂變?yōu)榱怂矔r狀態(tài)(T
17、ransient),此時,數(shù)據(jù)庫中沒有與之對應的記錄。23、工廠模式?工廠模式主要是為創(chuàng)建對象提供了接口。工廠模式按照Java與模式中的提法分為三類:1.簡單工廠模式(SimpleFactory)2.工廠方法模式(FactoryMethod)3.抽象工廠模式(AbstractFactory)這三種模式從上到下逐步抽象,并且更具一般性。還有一種分類法,就是將簡單工廠模式看為工廠方法模式的一種特例,兩個歸為一類。下面是使用工廠模式的兩種情況:1.在編碼時不能預見需要創(chuàng)建哪種類的實例。2.系統(tǒng)不應依賴丁產(chǎn)品類實例如何被創(chuàng)建、組合和表達的細節(jié)24、抽象類和接口的區(qū)別?接口是公開的,里面不能有私有的方法
18、或變量,是用于讓別人使用的,而抽象類是可以有私有方法或私有變量的,另外,實現(xiàn)接口的一定要實現(xiàn)接口里定義的所有方法,而實現(xiàn)抽象類可以有選擇地重寫需要用到的方法,一般的應用里,最頂級的是接口,然后是抽象類實現(xiàn)接口,最后才到具體類實現(xiàn)。還有,接口可以實現(xiàn)多重繼承,而一個類只能繼承一個超類,但可以通過繼承多個接口實現(xiàn)多重繼承,接口還有標識(里面沒有任何方法,如Remote接口)和數(shù)據(jù)共享(里面的變量全是常量)的作用.25、Forward和redirect的區(qū)別?forward是服務器請求資源,服務器直接訪問目標地址的URL,把那個URL的響應內(nèi)容讀取過來,然后把這些內(nèi)容再發(fā)給瀏覽器,瀏覽器根本不知道服
19、務器發(fā)送的內(nèi)容是從哪兒來的,所以它的地址欄中還是原來的地址。redirect就是服務端根據(jù)邏輯,發(fā)送一個狀態(tài)碼,告訴瀏覽器重新去請求那個地址,一般來說瀏覽器會用剛才請求的所有參數(shù)重新請求,所以session,request參數(shù)都可以獲取。26、持久化對象的三種狀態(tài),代表含義?瞬時態(tài):簡單的說就是你在程序里面new一個對象,還沒有和session關聯(lián)持久態(tài):對象和session有了關聯(lián),對象處于hibernate框架管理中游離態(tài):在持久態(tài)的情況下,對象和session失去了關聯(lián),比如session.close()或session.flush()后,即游離態(tài),但數(shù)據(jù)已經(jīng)存儲到了數(shù)據(jù)庫27、頁面之間
20、的值傳遞?1:可以分成多個參數(shù)對的方式用querystring傳遞。2:可以用特定的字符分隔后組成一個字符串,再用一個參數(shù)對的querystring方式傳遞。3:如果是第三信息的話,可以用在服務器端的session方式傳遞,一般不用這種方式。因為占服務器資源。4:也可以用cookie方式傳遞。5:當然還可以用其它的不常的方式傳遞。28、Struts框架的數(shù)據(jù)驗證可分為幾種類型?表單驗證(由ActionFormBean處理):如果用戶沒有在表單中輸入姓名,就提交表單,將生成表單驗證錯誤業(yè)務邏輯驗證(由Action處理):如果用戶在表單中輸入的姓名為"Monster”,按照本應用的業(yè)務規(guī)
21、則,不允許向“Monster'打招呼,因此將生成業(yè)務邏輯錯誤。29、寫一個Singleton模式的例子?publicclassSingleton(privatestaticfinalSingletonsingleton=newSingleton();privateSingleton()(publicstaticSingletongetInstance()(returnsingleton;30、談談你MVC的理解?MVC是一種設計模式,它強制的將應用程序的輸入、處理、和輸出分開。使用了MVC的應用程序被分為3個核心部件:試圖(View)、模型(Model)、控制器(Controller)
22、。它們各司其職,既分工明確又相互合作。首先視圖接受用戶輸入請求,然后將請求傳遞給控制器,控制器再調(diào)用某個模型來處理用戶的請求,在控制器的控制下,再將處理后的結果交給某個視圖進行格式化輸出給用戶.這是經(jīng)典的MVC設計執(zhí)行的基本流程。MVC不僅實現(xiàn)了功能模塊和顯示模塊的分離,同時它還提高了系統(tǒng)的可維護性、可擴展性和組件的可復用性,是一個優(yōu)秀的創(chuàng)建軟件的途徑。J2EE把MVC引入了web領域,并在此基礎上架構出了一套稱為Model2的體系。Model2體系及jsp作為視圖顯示輸出和接受用戶輸入數(shù)據(jù),Servlet作為控制器處理用戶請求并根據(jù)用戶請求選擇相應的jsp返回給用戶,javaBean作為模型
23、組件用作業(yè)務邏輯處理、管理數(shù)據(jù)的存儲和一致性。31、項目中為什么使用SSH?1.使用Struts是因為struts是基丁MVC模式的,很好的將應用程序進行了分層,使開發(fā)者更關注丁業(yè)務邏輯的實現(xiàn);第二,struts有著豐富的taglib,如能靈活運用,則能大大提高開發(fā)效率。2. 使用Hibernate:因為hibernate為Java應用提供了一個易用的、高效率的對象關系映射框架。hibernate是個輕量級的持久性框架,功能豐富。使用Spring:因為spring基丁IoC(InversionofControl,反向控制)和AOP構架多層j2ee系統(tǒng)的框架,但它不強迫你必須在每一層中必須使用S
24、pring,因為它模塊化的很好,允許你根據(jù)自己的需要選擇使用它的某一個模塊;采用IoC使得可以很容易的實現(xiàn)bean的裝配,提供了簡潔的AOP并據(jù)此實現(xiàn)事務管理(TranscationManagment),等等32、在Struts2中,action是單實例還是多實例,為什么?struts2的Action是多實例的并非單例,也就是每次請求產(chǎn)生一個Action的對象。原因是:struts2的Action中包含數(shù)據(jù),例如你在頁面填寫的數(shù)據(jù)就會包含在Action的成員變量里面。如果Action是單實例的話,這些數(shù)據(jù)在多線程的環(huán)境下就會相互影響,例如造成別人填寫的數(shù)據(jù)被你看到了。所以Struts2的Act
25、ion是多例模式的。33、Hibernate與jdbc的聯(lián)系?hibernate是jdbc的輕量級封裝,包括jdbc的與數(shù)據(jù)庫的連接(用perty的配置文件實現(xiàn)當然本質(zhì)是封裝了jdbc的forname),和查詢,刪除等代碼,都用面向對象的思想用代碼聯(lián)系起來,hibernate通過hbm配置文件把po類的字段和數(shù)據(jù)庫的字段關聯(lián)起來比如數(shù)據(jù)庫的id,在po類中就是praviteLongid;publicLonggetId();publicsetId(Longid);然后hql語句也是面向對象的,它的查詢語句不是查詢數(shù)據(jù)庫而是查詢類的,這些實現(xiàn)的魔法就是xml文件,其實hi
26、bernate=封裝的jdbc+xml文件34、一般用spring做什么?Spring是一個解決了許多在J2EE開發(fā)中常見的問題的強大框架。Spring提供了管理業(yè)務對象的一致方法并且鼓勵了注入對接口編程而不是對類編程的良好習慣。Spring的架構基礎是基丁使用JavaBean屆性的InversionofControl容器。然而,這僅僅是完整圖景中的一部分:Spring在使用IoC容器作為構建完關注所有架構層的完整解決方案方面是獨一無二的。Spring提供了唯一的數(shù)據(jù)訪問抽象,包括簡單和有效率的JDBC框架,極大的改進了效率并且減少了可能的錯誤。Spring的數(shù)據(jù)訪問架構還集成了Hiberna
27、te和其他O/Rmapping解決方案。Spring還提供了唯一的事務管理抽象,它能夠在各種底層事務管理技術,例如JTA或者JDBC事務提供一個一致的編程模型。Spring提供了一個用標準Java語言編寫的AOP框架,它給POJOs提供了聲明式的事務管理和其他企業(yè)事務-如果你需要-還能實現(xiàn)你自己的aspects。這個框架足夠強大,使得應用程序能夠拋開EJB的復雜性,同時享受著和傳統(tǒng)EJB相關的關鍵服務。Spring還提供了可以和IoC容器集成的強大而靈活的MVCWeb框架。35、C/S與B/S的區(qū)別?C/S架構是一種典型的兩層架構,其全程是Client/server,即客戶端服務器端架構,其客
28、戶端包含一個或多個在用戶的電腦上運行的程序,而服務器端有兩種,一種是數(shù)據(jù)庫服務器端,客戶端通過數(shù)據(jù)庫連接訪問服務器端的數(shù)據(jù);另一種是Socket服務器端,服務器端的程序通過Socket與客戶端的程序通信。C/S架構也可以看做是胖客戶端架構。因為客戶端需要實現(xiàn)絕大多數(shù)的業(yè)務邏性和界面展示。這種架構中,作為客戶端的部分需要承受很大的壓力,因為顯示邏輯和事務處理都包含在其中,通過與數(shù)據(jù)庫的交互(通常是SQL或存儲過程的實現(xiàn))來達到持久化數(shù)據(jù),以此滿足實際項目的需要。B/S架構的全稱為Browser/Server,即瀏覽器/服務器結構。Browser指的是Web瀏覽器,極少數(shù)事務邏輯在前端實現(xiàn),但主要
29、事務邏輯在服務器端實現(xiàn),Browser客戶端,WebApp服務器端和DB端構成所謂的三層架構。B/S架構的系統(tǒng)無須特別安裝,只有Web瀏覽器即可。B/S架構中,顯示邏輯交給了Web瀏覽器,事務處理邏輯在放在了WebApp上,這樣就避免了龐大的胖客戶端,減少了客戶端的壓力。因為客戶端包含的邏輯很少,因此也被成為瘦客戶端。36、J2EE常用的設計模式?說明工廠模式?Java中的23種設計模式:Factory(工廠模式),Builder(建造模式),FactoryMethod(工廠方法模式),Prototype(原始模型模式),Singleton(單例模式),F(xiàn)acade(門面模式),Adapter
30、(適配器模式),Bridge(橋梁模式),Composite(合成模式),Decorator(裝飾模式),F(xiàn)lyweight(享元模式),Proxy(代理模式),Command(命令模式),Interpreter(解釋器模式),Visitor(訪問者模式),Iterator(迭代子模式),Mediator(調(diào)停者模式),Memento(備忘錄模式),Observer(觀察者模式),State(狀態(tài)模式),Strategy(策略模式),TemplateMethod(模板方法模式),ChainOfResponsibleity(責任鏈模式)工廠模式:工廠模式是一種經(jīng)常被使用到的模式,根據(jù)工廠模式實現(xiàn)
31、的類可以根據(jù)提供的數(shù)據(jù)生成一組類中某一個類的實例,通常這一組類有一個公共的抽象父類并且實現(xiàn)了相同的方法,但是這些方法針對不同的數(shù)據(jù)進行了不同的操作。首先需要定義一個基類,該類的子類通過不同的方法實現(xiàn)了基類中的方法。然后需要定義一個工廠類,工廠類可以根據(jù)條件生成不同的子類實例。當?shù)玫阶宇惖膶嵗螅_發(fā)人員可以調(diào)用基類中的方法而不必考慮到底返回的是哪一個子類的實例。37、BeanFactory的作用是什么?BeanFactory提供的高級配置機制,使得管理任何性質(zhì)的對象成為可能。在Spring中,BeanFactory是IoC容器的核心接口。它的職責包括:實例化、定位、配置應用程序中的對象及建立這
32、些對象間的依賴。Spring為我們提供了許多易用的BeanFactory實現(xiàn),XmlBeanFactory就是最常用的一個。該實現(xiàn)將以XML方式描述組成應用的對象以及對象間的依賴關系。XmlBeanFactory類將持有此XML配置元數(shù)據(jù),并用它來構建一個完全可配置的系統(tǒng)或應用。Ajax的工作原理?通過javascript的方式,將前臺數(shù)據(jù)通過xmlhttp對象傳遞到后臺,后臺在接收到請求后,將需要的結果,再傳回到前臺,這樣就可以實現(xiàn)不需要頁面的回發(fā),貞是數(shù)據(jù)實現(xiàn)來回傳遞,從貞實現(xiàn)無刷新。39、何為容器?容器是一個Java所編寫的程序,原先必須自行編寫程序以管理對象關系,現(xiàn)在容器都會自動幫您作
33、好。常用容器WebSphere,WebLogic,Resin,Tomcat40、Spring配置文件中的ref元素的作用是什么?它的兩個基本屬性是什么?用丁指定屆性值為spring容器中的其它bean.兩個基本屆性是bean和local41、Hibernate具有的三種檢索方式?HQL檢索方式QBC檢索方式SQL檢索方式42、什么是IOC,請詳述?不創(chuàng)建對象,但是描述創(chuàng)建它們的方式。在代碼中不直接與對象和服務連接,但在配置文件中描述哪一個組件需要哪一項服務。容器(在Spring框架中是IOC容器)負責將這些聯(lián)系在一起。就是由容器控制程序之間的關系,而非傳統(tǒng)實現(xiàn)中,由程序代碼直接操控,控制權由應
34、用代碼中轉到了外部容器,控制權的轉移,就是所謂的反轉。43、什么是AOP,請詳述?是面向切面編程。AOP把軟件系統(tǒng)分為兩個部分:核心關注點和橫切關注點。所謂的核心關注點,是業(yè)務處理的主要流程,也就是說這個解決方案要做的事。所謂橫切關注點,是與核心業(yè)務無關的部分,它把常發(fā)生在核心關注點的多處,而各處基本相似,如日志,事務,權限等。44、Spring框架的七個模塊是什么?(1) springAOP-面象切面編程springDAO-數(shù)據(jù)訪問對象springORM-對象關系影射springContect-上下文配置,向Spring框架提供上下文信息springWEB-WEB上下文模塊(2) sprin
35、gWEB-MVC-實現(xiàn)了MVCspringCORE*心容器提供Spring框架基本功能45、Spring的注入方式有哪幾種?1. 接口注入(不推薦)2. getter,setter方式注入(比較常用)構造器注入(死的應用)接口注入模式因為具備侵入性,它要求組件必須與特定的接口相關聯(lián),因此并不被看好,實際使用有限。Setter注入:對于習慣了傳統(tǒng)javabean開發(fā)的程序員,通過setter方法設定依賴關系更加直觀。如果依賴關系較為復雜,那么構造子注入模式的構造函數(shù)也會相當龐大,而此時設值注入模式則更為簡潔。如果用到了第三方類庫,可能要求我們的組件提供一個默認的構造函數(shù),此時構造子注入模式也不適用。構造器注入:在構造期間完成一個完整的、合法的對象。所有依賴關系在構造函數(shù)中集中呈現(xiàn)。依賴關系在構造時由容器一次性設定,組件被創(chuàng)建之后一
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國珍仙米行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告(2024-2030)
- 2025年中國高纖維食物行業(yè)市場調(diào)查研究及發(fā)展戰(zhàn)略規(guī)劃報告
- 提高團隊凝聚力的活動建議
- 甘肅加鑫礦業(yè)有限公司合作市下看木倉金礦礦產(chǎn)資源開發(fā)與恢復治理方案專家組審查意見
- 2025年中國納夫妥AS-E行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年中國汽車DVD系統(tǒng)行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 當前高校人才培養(yǎng)面臨的主要挑戰(zhàn)與瓶頸
- 2025年中國熱端噴涂機市場調(diào)查研究報告
- 2025年中國燙畫數(shù)據(jù)監(jiān)測研究報告
- 電商平臺與農(nóng)村經(jīng)濟結構的深度融合
- 醫(yī)院物業(yè)服務招標綜合評分表
- 軟件工程導論(第六版)張海藩-牟永敏課后習題答案
- 物體打擊應急演練總結
- 環(huán)境保護局水質(zhì)自動在線監(jiān)測儀、站房及3年運營維護服務招投標書范本
- 天然氣管道工程管道焊接施工方案
- GB/T 95-2002平墊圈C級
- GB/T 16823.3-1997螺紋緊固件擰緊試驗方法
- 幼兒園消防安全組織機構圖
- 英語社團活動課件
- 第三方檢測市場部管理制度提成方案
- 學前兒童發(fā)展心理學-情感
評論
0/150
提交評論