您好,登錄后才能下訂單哦!
Spring是java企業級應用的開源開發框架,在企業中應用較多。作為輕量級的Java開發框架解決企業應用開發的復雜性而創建,今天小編分享的是一份關于Java開發Spring常見面試題及答案集合,很多人都不太了解,今天小編為了讓大家更加了解Java開發,所以給大家總結了以下內容,一起往下看吧。
Spring常見面試題及答案分享:
一、spring是什么?
Spring是個java企業級應用的開源開發框架。Spring主要用來開發Java應用,但是有些擴展是針對構建J2EE平臺的web應用。Spring框架目標是簡化Java企業級應用開發,并通過POJO為基礎的編程模型促進良好的編程習慣。
二、使用Spring框架的好處?
輕量:Spring是輕量的,基本的版本大約2MB。
控制反轉:Spring通過控制反轉實現了松散耦合,對象們給出它們的依賴,而不是創建或查找依賴的對象們。
面向切面的編程(AOP):Spring支持面向切面的編程,并且把應用業務邏輯和系統服務分開。
容器:Spring包含并管理應用中對象的生命周期和配置。
MVC框架:Spring的WEB框架是個精心設計的框架,是Web框架的一個很好的替代品。
事務管理:Spring提供一個持續的事務管理接口,可以擴展到上至本地事務下至全局事務(JTA)。
異常處理:Spring提供方便的API把具體技術相關的異常(比如由JDBC,Hibernate or JDO拋出的)轉化為一致的unchecked異常。
三、Spring組成模塊有哪些?
Spring框架的基本模塊:
Core module
Bean module
Context module
Expression Language module
JDBC module
ORM module
OXM module
Java Messaging Service(JMS) module
Transaction module
Web module
Web-Servlet module
Web-Struts module
Web-Portlet module
四、核心容器模塊有哪些?
提供spring框架的基礎功能,BeanFactory是 任何以spring為基礎的應用的核心。Spring框架建立在此模塊之上,使Spring成為一個容器。
五、XMLBeanFactory
最常用的就是org.springframework.beans.factory.xml.XmlBeanFactory,它根據XML文件中的定義加載beans。該容器從XML文件讀取配置元數據并用它去創建一個完全配置的系統或應用。
六、解釋AOP模塊是什么?
AOP模塊用于發給我們的Spring應用做面向切面的開發, 很多支持由AOP聯盟提供,這樣就確保了Spring和其他AOP框架的共通性。這個模塊將元數據編程引入Spring。
七、解釋JDBC抽象和DAO模塊。
通過使用JDBC抽象和DAO模塊,保證數據庫代碼的簡潔,并能避免數據庫資源錯誤關閉導致的問題,它在各種不同的數據庫的錯誤信息之上,提供了一個統一的異常訪問層。它還利用Spring的AOP模塊給Spring應用中的對象提供事務管理服務。
八、解釋對象/關系映射集成模塊。
Spring通過提供ORM模塊,支持我們在直接JDBC之上使用一個對象/關系映射映射(ORM)工具,Spring支持集成主流的ORM框架,如Hiberate,JDO和iBATIS SQL Maps。Spring的事務管理同樣支持以上所有ORM框架及JDBC。
九、解釋WEB模塊。
Spring的WEB模塊是構建在application context模塊基礎之上,提供一個適合web應用的上下文。這個模塊也包括支持多種面向web的任務,如透明地處理多個文件上傳請求和程序級請求參數的綁定到你的業務對象。它也有對Jakarta Struts的支持。
十、Spring配置文件
Spring配置文件是個XML文件,文件包含了類信息,描述了如何配置它們,以及如何相互調用。
十一、IOC的優點是什么?
IOC或 依賴注入把應用的代碼量降到最低。它使應用容易測試,單元測試不再需要單例和JNDI查找機制。最小的代價和最小的侵入性使松散耦合得以實現。IOC容器支持加載服務時的餓漢式初始化和懶加載。
十二、ApplicationContext實現方式
FileSystemXmlApplicationContext:此容器從一個XML文件中加載beans的定義,XML Bean配置文件的全路徑名必須提供給它的構造函數。ClassPathXmlApplicationContext:此容器也從一個XML文件中加載beans的定義,這里,你需要正確設置classpath因為這個容器將在classpath里找bean配置。WebXmlApplicationContext:此容器加載一個XML文件,此文件定義了一個WEB應用的所有bean。
十三、Spring依賴注入是什么?
依賴注入是IOC的一個方面,有多種解釋。這概念是說你不用創建對象,而只需要描述它如何被創建。你不在代碼里直接組裝你的組件和服務,但是要在配置文件里描述哪些組件需要哪些服務,之后一個容器(IOC容器)負責把他們組裝起來。
十四、有哪些不同類型的IOC依賴注入方式?
構造器依賴注入:構造器依賴注入通過容器觸發一個類的構造器來實現的,該類有一系列參數,每個參數代表一個對其他類的依賴。
Setter方法注入:Setter方法注入是容器通過調用無參構造器或無參static工廠 方法實例化bean之后,調用該bean的setter方法,即實現了基于setter的依賴注入。
十五、Spring容器配置元數據?
Spring容器提供配置元數據
XML配置文件;基于注解的配置;基于java的配置。
十六、定義類的作用域?
當定義一個<bean>在Spring里,我們還能給這個bean聲明一個作用域。它可以通過bean定義中的scope屬性來定義。如,當Spring要在需要的時候每次生產一個新的bean實例,bean的scope屬性被指定為prototype。另一方面,一個bean每次使用的時候必須返回同一個實例,這個bean的scope屬性 必須設為singleton。
十七、Spring內部bean是什么?
當一個bean僅被用作另一個bean的屬性時,它能被聲明為一個內部bean,為了定義inner bean,在Spring的 基于XML的 配置元數據中,可以在<property/>或<constructor-arg/>元素內使用<bean/>元素,內部bean通常是匿名的,它們的Scope一般是prototype。
十八、在Spring中如何注入一個java集合?
Spring提供以下幾種集合的配置元素:
<list>類型用于注入一列值,允許有相同的值。
<set>類型用于注入一組值,不允許有相同的值。
<map>類型用于注入一組鍵值對,鍵和值都可以為任意類型。
<props>類型用于注入一組鍵值對,鍵和值都只能為String類型。
以上就是Java開發Spring常見面試題及答案的簡略介紹,當然詳細使用上面的不同還得要大家自己使用過才領會。如果想了解更多,歡迎關注億速云行業資訊頻道哦!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。