Spring常見面試題!

六星_研鑫發表於2020-07-29

點選免費獲取最新BAT面試題,2020最新面試技巧和簡歷模板!


1.是什麼?

Spring是基於JEE的輕量級的應用框架 

2.有什麼?

每個包的功能:

WEBMVC:spring 本身提供的web 框架

WEB:整合web 應用的框架

JEE :繼承一系列的jee的技術

DAO:封裝了JDBC;

ORM:提供了對ORM工具的整合

AOP :面向切面編成

CORE:spring的核心包,提供bean的公廠和IOC容器

3.能幹什麼?

把一列的jee的技術有效的組合在一起形成以良好的系統

4.容器和bean

           Bean :是指受spring和ioc管理的物件稱為bean

           容器 :(與jee的容器類比)

           Jee    :提供元件的執行環境和管理元件的生命週期(不能單獨存在)

           Spring :提供bean的執行環境和管理bean的生命週期(可以單獨存在)

5.IOC控制反轉

從前的應用程式想要得到A的例項他會直接主動的去拿,當用了sping後,應用程式由主動的去取變成被動的等待,由spring來控制應用程式所需要的物件

 1.IOC的優點

     1.可以透過IOC來獲得例項

     2.可以透過DI來獲取注入的資源

 2.配置IOC的原則

    1.一定是可變的資源才採用依賴注入

    2.一定是層間的介面或者是模組之間的相互呼叫才採用依賴注入

    3.表現層呼叫邏輯層,可以讓表現層作為客戶端,而不要採用依賴注入。表現層只需要邏輯層介面一個資源

6.DI依賴注入

1. 應用程式依賴spring注入所需要的物件IOC和DI是對同一種事情的不同描述

2.setter注入: 在配置檔案中將介面的實現配置為bean在應用程式中注入

3.構造器注入

4.singleton

         1.單例模式是整個的jvm中只有一個例項

         2.spring的singleton是指在spring的容器中只有一個例項,一個生命週期中只有一個例項

5.DI的優點:

         1.程式被動等待,強化面向介面編成

         2.切斷了物件或元件之間的聯絡,使程式的結構更加鬆散,執行和維護更加簡單

7.Aop面向切面程式設計

1.AOP面向切面程式設計  一些較好的模式或者是示例----正規化

  切面:一個切面代表我們所關注的一系列的共同的功能點(模組之間的共同的功能點)

2.AOP的思想: 主動---->被動(追加功能)

3.AOP 的概念

1.切面     :我們所關注的功能點

2.連線點   :事件的觸發點(方法的執行)

3.通知     :連線點觸發時 執行的動作(方法)

4.切入點   :一系列的連線點的集合  (連線點的模組化)

5.引入     :擴充套件的功能

6.目標物件 :包含連線點的物件

7.aop代理  :實現機制

8.使用註解

1.@Aspect宣告一個切面,將一系列的共同的功能定義成一個切面

       直接在類上定義@Aspect

2.@Pointcut宣告切入點

    用一個專門的類來定義pointcut,類中的方法名就是該pointcut的名字

3.@Aronud 

   註解@Around環繞追加功能;

   在執行目標物件的方法的前、後追加功能;

   必須有引數;第一個引數的型別必須為ProceedingJoinPoint;

   透過ProceedingJoinPoint的例項的proceed來呼叫所監控的目標物件的方法

   定義一個pointcut,透過方法名來作為pointcut的名稱來引用    

4.@Before

 註解@Before在執行目標物件的方法前追加相應的功能

 定義一個pointcut,透過方法名來作為pointcut的名稱來引用          

5.@After

 註解@After在執行目標物件的方法後追加相應的功能

 定義一個pointcut,透過方法名來作為pointcut的名稱來引用 

6.@Transcational

  指哪打哪(可以在類上,也可以在方法上)

  同樣需要注入dataSource和spring的事務管理


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69977571/viewspace-2707931/,如需轉載,請註明出處,否則將追究法律責任。

相關文章