更新時(shí)間:2020-05-28 16:30:42 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2493次
Spring是java企業(yè)級(jí)應(yīng)用的開(kāi)源開(kāi)發(fā)框架,在企業(yè)中應(yīng)用較多。作為輕量級(jí)的Java開(kāi)發(fā)框架解決企業(yè)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建,小編為大家總結(jié)Spring常見(jiàn)面試題及答案,希望可以幫助正在面試的Java程序員。
1.spring是什么?
Spring是個(gè)java企業(yè)級(jí)應(yīng)用的開(kāi)源開(kāi)發(fā)框架。Spring主要用來(lái)開(kāi)發(fā)Java應(yīng)用,但是有些擴(kuò)展是針對(duì)構(gòu)建J2EE平臺(tái)的web應(yīng)用。Spring框架目標(biāo)是簡(jiǎn)化Java企業(yè)級(jí)應(yīng)用開(kāi)發(fā),并通過(guò)POJO為基礎(chǔ)的編程模型促進(jìn)良好的編程習(xí)慣。
3.Spring組成模塊有哪些?
Spring框架的基本模塊:
4.核心容器模塊有哪些?
提供spring框架的基礎(chǔ)功能,BeanFactory是任何以spring為基礎(chǔ)的應(yīng)用的核心。Spring框架建立在此模塊之上,使Spring成為一個(gè)容器。
5.XMLBeanFactory
最常用的就是org.springframework.beans.factory.xml.XmlBeanFactory,它根據(jù)XML文件中的定義加載beans。該容器從XML文件讀取配置元數(shù)據(jù)并用它去創(chuàng)建一個(gè)完全配置的系統(tǒng)或應(yīng)用。
6.解釋AOP模塊是什么?
AOP模塊用于發(fā)給我們的Spring應(yīng)用做面向切面的開(kāi)發(fā),很多支持由AOP聯(lián)盟提供,這樣就確保了Spring和其他AOP框架的共通性。這個(gè)模塊將元數(shù)據(jù)編程引入Spring。
7.解釋JDBC抽象和DAO模塊。
通過(guò)使用JDBC抽象和DAO模塊,保證數(shù)據(jù)庫(kù)代碼的簡(jiǎn)潔,并能避免數(shù)據(jù)庫(kù)資源錯(cuò)誤關(guān)閉導(dǎo)致的問(wèn)題,它在各種不同的數(shù)據(jù)庫(kù)的錯(cuò)誤信息之上,提供了一個(gè)統(tǒng)一的異常訪問(wèn)層。它還利用Spring的AOP模塊給Spring應(yīng)用中的對(duì)象提供事務(wù)管理服務(wù)。
8.解釋對(duì)象/關(guān)系映射集成模塊。
Spring通過(guò)提供ORM模塊,支持我們?cè)谥苯覬DBC之上使用一個(gè)對(duì)象/關(guān)系映射映射(ORM)工具,Spring支持集成主流的ORM框架,如Hiberate,JDO和iBATIS SQLMaps。Spring的事務(wù)管理同樣支持以上所有ORM框架及JDBC。
9.解釋W(xué)EB模塊。
Spring的WEB模塊是構(gòu)建在application context模塊基礎(chǔ)之上,提供一個(gè)適合web應(yīng)用的上下文。這個(gè)模塊也包括支持多種面向web的任務(wù),如透明地處理多個(gè)文件上傳請(qǐng)求和程序級(jí)請(qǐng)求參數(shù)的綁定到你的業(yè)務(wù)對(duì)象。它也有對(duì)Jakarta Struts的支持。
10.Spring配置文件
Spring配置文件是個(gè)XML文件,文件包含了類信息,描述了如何配置它們,以及如何相互調(diào)用。
11.IOC的優(yōu)點(diǎn)是什么?
IOC或依賴注入把應(yīng)用的代碼量降到最低。它使應(yīng)用容易測(cè)試,單元測(cè)試不再需要單例和JNDI查找機(jī)制。最小的代價(jià)和最小的侵入性使松散耦合得以實(shí)現(xiàn)。IOC容器支持加載服務(wù)時(shí)的餓漢式初始化和懶加載。
12.ApplicationContext實(shí)現(xiàn)方式
FileSystemXmlApplicationContext:此容器從一個(gè)XML文件中加載beans的定義,XML Bean配置文件的全路徑名必須提供給它的構(gòu)造函數(shù)。ClassPathXmlApplicationContext:此容器也從一個(gè)XML文件中加載beans的定義,這里,你需要正確設(shè)置classpath因?yàn)檫@個(gè)容器將在classpath里找bean配置。WebXmlApplicationContext:此容器加載一個(gè)XML文件,此文件定義了一個(gè)WEB應(yīng)用的所有bean。
13.Spring依賴注入是什么?
依賴注入是IOC的一個(gè)方面,有多種解釋。這概念是說(shuō)你不用創(chuàng)建對(duì)象,而只需要描述它如何被創(chuàng)建。你不在代碼里直接組裝你的組件和服務(wù),但是要在配置文件里描述哪些組件需要哪些服務(wù),之后一個(gè)容器(IOC容器)負(fù)責(zé)把他們組裝起來(lái)。
14.有哪些不同類型的IOC依賴注入方式?
構(gòu)造器依賴注入:構(gòu)造器依賴注入通過(guò)容器觸發(fā)一個(gè)類的構(gòu)造器來(lái)實(shí)現(xiàn)的,該類有一系列參數(shù),每個(gè)參數(shù)代表一個(gè)對(duì)其他類的依賴。
Setter方法注入:Setter方法注入是容器通過(guò)調(diào)用無(wú)參構(gòu)造器或無(wú)參static工廠方法實(shí)例化bean之后,調(diào)用該bean的setter方法,即實(shí)現(xiàn)了基于setter的依賴注入。
15.Spring容器配置元數(shù)據(jù)?
Spring容器提供配置元數(shù)據(jù)
XML配置文件;基于注解的配置;基于java的配置。
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java筆試面試題:Spring常見(jiàn)面試題及答案分享”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)
初級(jí) 202925
初級(jí) 203221
初級(jí) 202629
初級(jí) 203743