當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring学习5之自动装配Bean01
生活随笔
收集整理的這篇文章主要介紹了
Spring学习5之自动装配Bean01
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
之前我們都是手動裝配Bean,但是Spring里面有一個自動裝配的方法!
一、自動裝配是什么?
自動裝配是Spring滿足bean依賴一種方式!
Spring會在上下文中自動尋找,并自動給bean裝配屬性!
在Spring中有三種裝配的方式
- 1.在xml中顯示的配置
- 2.在java中顯示的配置
- 3.隱式的自動裝配bean【重要】
二、使用步驟
1.需要的實體類
package com.shan.pojo;public class Cat {public void shout(){System.out.println("miao~");} } package com.shan.pojo;public class Cat {public void shout(){System.out.println("miao~");} } package com.shan.pojo;import lombok.Data; import lombok.ToString; import org.springframework.beans.factory.annotation.Autowired;@Data @ToString public class People {@Autowiredprivate Dog dog;@Autowiredprivate Cat cat;private String name; }2.配置文件
<!--先導入context約束,再配置注解的支持--><context:annotation-config/><bean id="dog" class="com.shan.pojo.Dog"/><bean id="cat" class="com.shan.pojo.Cat"/><!--手動裝配--><bean id="people" class="com.shan.pojo.People"><property name="name" value="小黑神"/><property name="cat" ref="cat"/><property name="dog" ref="dog"/></bean><!--ByName會自動在容器上下文中查找,和自己對象set方法后面的值對應的bean id--><bean id="people" class="com.shan.pojo.People" autowire="byName"><property name="name" value="小黑神"/></bean><!--ByType會自動在容器上下文中查找,和自己對象屬性類型相同的bean id--><bean id="people" class="com.shan.pojo.People" autowire="byType"><property name="name" value="小黑神"/></bean>3.測試類
import com.shan.pojo.People; import org.junit.Test; import org.springframework.context.support.ClassPathXmlApplicationContext;public class MyTest {@Testpublic void test1(){ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");People people = context.getBean("people", People.class);System.out.println(people.getName());people.getCat().shout();people.getDog().shout();} }測試結果:小黑神,miao,wang
說明自動裝配成功裝入了Bean
總結
配置文件中顯示的裝配非常簡單,只需要弄清楚ByName和ByType達到的效果是什么即可!
ByName會自動在容器上下文中查找,和自己對象set方法后面的值對應的bean id;
ByType會自動在容器上下文中查找,和自己對象屬性類型相同的bean id。
作者有話說
博客創作不易,希望看到這里的讀者動動你的小手點個贊,如果喜歡的小伙伴可以一鍵三連,作者大大在這里給大家謝謝了。
總結
以上是生活随笔為你收集整理的Spring学习5之自动装配Bean01的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring学习4之依赖注入(DI)
- 下一篇: Spring学习6之自动装配Bean02