Spring 三種注入方式

2022-09-21 20:36:10 字數 1016 閱讀 1389

迴圈依賴這個問題,按理說我們在日常的程式設計中應該避免,其實這個本來也是能夠避免的。不過由於總總原因,我們可能還是會遇到一些迴圈依賴的問題,特別是在面試的過程中,面試考察迴圈依賴,主要是想考察候選人對 spring 原始碼的熟悉程度,因為要把迴圈依賴這個問題解釋清楚,涉及到不少 spring 原始碼。

問題比較龐大,今天先來聊聊例項的注入方式。

首先來看看 spring 中的例項該如何注入,總結起來,無非三種:

我們分別來看下。

屬性注入是大家最為常見也是使用最多的一種注入方式了,**如下:

@service

public

class

bservice

這裡是使用@autowired註解注入。另外也有@resource以及@inject等註解,都可以實現注入。

不過不知道小夥伴們有沒有留意過,在 idea 裡邊,使用屬性注入,會有乙個警告:

不推薦屬性注入!

set 方法注入太過於臃腫,實際上很少使用:

@service

public

class

bservice

}

這**看一眼都覺得難受,堅決不用。

構造方法注入方式如下:

@service

public

class

aservice

}

如果類只有乙個構造方法,那麼@autowired註解可以省略;如果類中有多個構造方法,那麼需要新增上@autowired來明確指定到底使用哪個構造方法。

日常開發應該還是屬性注入較多代,碼該咋寫還咋寫,spring 官方的態度了解一下即可,當然,如果專案允許,也不妨試試 spring 推薦的**規範。

Spring三種注入方式

spring有三種依賴注入的方式,第一種是構造方法注入 12 xx cc ss ppp bean類 public class per public void get 這種方式缺點是在獲取bean物件時,注入資料是必須的操作,否則無法建立,即使是無用的資料也要注入。如果有多個構造方法,每個構造方法只有...

Spring依賴注入的三種方式

1 自動裝配 2 配置檔案ref配置 3 resource註解注入 使用 resource註解注釋需要注入的依賴宣告。如 public class usermanageimp implements iusermanage public void setuserdao iuserdao userdao...

spring 依賴注入的三種方式

autowired 構造器,引數,方法,屬性 都是從容器中獲取引數元件的值 set方法注入 構造器注入 作為bean方法的引數注入 例子 boss 注入car類 car類 package com.spring.bean component public class car boss類 package...