Java項(xiàng)目目錄結(jié)構(gòu)
在學(xué)習(xí)Spring之前,我們先來了解一下Java項(xiàng)目的目錄結(jié)構(gòu)。下圖是小編的Spring的Java項(xiàng)目目錄結(jié)構(gòu): 在這個(gè)項(xiàng)目中,我們將主要關(guān)注依賴注入的構(gòu)造器注入。 定義Car類 首先,讓我
在學(xué)習(xí)Spring之前,我們先來了解一下Java項(xiàng)目的目錄結(jié)構(gòu)。下圖是小編的Spring的Java項(xiàng)目目錄結(jié)構(gòu):
在這個(gè)項(xiàng)目中,我們將主要關(guān)注依賴注入的構(gòu)造器注入。
定義Car類
首先,讓我們創(chuàng)建一個(gè)名為Car的類。在這個(gè)類中,我們定義了四個(gè)屬性,并重寫了toString方法。另外,我們還創(chuàng)建了一個(gè)含有三個(gè)參數(shù)的構(gòu)造方法。
``` public class Car { private String brand; private String model; private int year; private boolean isNew; public Car(String brand, String model, int year) { brand; model; year; true; } // Getters and setters @Override public String toString() { return "Car [brand" brand ", model" model ", year" year ", isNew" isNew "]"; } } ```通過構(gòu)造器注入方式注入
接下來,我們需要在配置文件中使用構(gòu)造器注入的方式來進(jìn)行依賴注入。按照下圖所示,在配置文件中添加以下代碼:
```在上述代碼中,我們創(chuàng)建了一個(gè)id為"car"的bean實(shí)例,并傳遞了三個(gè)參數(shù)值:"Toyota"、"Camry"和"2020"。
創(chuàng)建IOC容器并獲取bean實(shí)例
在主程序中,我們需要?jiǎng)?chuàng)建一個(gè)IOC容器,并根據(jù)id獲取Car的bean實(shí)例。然后,我們調(diào)用該實(shí)例的toString方法,并在控制臺(tái)輸出結(jié)果。
``` public class MainApp { public static void main(String[] args) { ApplicationContext context new ClassPathXmlApplicationContext("applicationContext.xml"); Car car (Car) ("car"); (()); } } ```當(dāng)我們運(yùn)行上述代碼時(shí),可以看到默認(rèn)情況下,配置文件中的參數(shù)注入是按照順序進(jìn)行的。也就是說,"Toyota"被注入到了brand屬性,"Camry"被注入到了model屬性,"2020"被注入到了year屬性。
通過構(gòu)造器注入,我們可以將依賴注入的過程交給Spring框架來管理,使得代碼更加靈活和易于維護(hù)。