Spring使用注解進(jìn)行引用類(lèi)型的自動(dòng)裝配逐步分析
本系列文章將會(huì)帶領(lǐng)大家進(jìn)行Spring的全面學(xué)習(xí),持續(xù)關(guān)注我,不斷更新中…
一.案例分級(jí)
簡(jiǎn)單解析:配置類(lèi)替代以前的配置文件,實(shí)體類(lèi)提供對(duì)象,業(yè)務(wù)類(lèi)中有實(shí)體類(lèi)的引用對(duì)象,在業(yè)務(wù)層中實(shí)現(xiàn)引用類(lèi)的自動(dòng)裝配。
二.各層代碼及詳細(xì)解析
配置類(lèi):(關(guān)于配置類(lèi)中兩個(gè)注解的解釋可以參考前面文章)
package com.itheima.config; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; @Configuration //設(shè)置為配置類(lèi) @ComponentScan("com.itheima") //在com.otheima這個(gè)包下掃描bean對(duì)象 public class SpringConfig { }
實(shí)體類(lèi)BookDaoImpl:
package com.itheima.dao.impl; import com.itheima.dao.BookDao; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import org.springframework.stereotype.Repository; @Repository //注解注冊(cè)bean public class BookDaoImpl implements BookDao { public void save() { System.out.println("book dao save ..."); } }
實(shí)體接口BookDao:
package com.itheima.dao; public interface BookDao { public void save(); }
業(yè)務(wù)類(lèi)BookServiceImol:
package com.itheima.service.impl; import com.itheima.dao.BookDao; import com.itheima.service.BookService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class BookServiceImol implements BookService { @Autowired private BookDao bookDao; public void save() { System.out.println("book service save...."); bookDao.save(); } }
@Service:注冊(cè)bean對(duì)象,在執(zhí)行類(lèi)中使用getBean()方法獲取.
@Autowired:進(jìn)行自動(dòng)裝配,如果沒(méi)有此句話,將會(huì)出現(xiàn)以下錯(cuò)誤運(yùn)行結(jié)果:
業(yè)務(wù)接口BookService:
package com.itheima.service; public interface BookService { public void save(); }
執(zhí)行類(lèi)App3:
package com.itheima; import com.itheima.config.SpringConfig; import com.itheima.dao.BookDao; import com.itheima.service.BookService; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import java.awt.print.Book; public class App3 { public static void main(String[] args) { AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfig.class); BookService service=ctx.getBean(BookService.class); service.save(); } }
三.自動(dòng)裝配成功正確執(zhí)行結(jié)果
后續(xù)文章:使用注解進(jìn)行簡(jiǎn)單類(lèi)型的自動(dòng)裝配
到此這篇關(guān)于Spring使用注解進(jìn)行引用類(lèi)型的自動(dòng)裝配逐步分析的文章就介紹到這了,更多相關(guān)Spring自動(dòng)裝配內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IDEA性能優(yōu)化設(shè)置(解決卡頓問(wèn)題)
在我們?nèi)粘J褂肐DEA進(jìn)行開(kāi)發(fā)時(shí),可能會(huì)遇到許多卡頓的瞬間,本文主要介紹了IDEA性能優(yōu)化設(shè)置,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2023-05-05Java內(nèi)部類(lèi)原理、概述與用法實(shí)例詳解
這篇文章主要介紹了Java內(nèi)部類(lèi)原理、概述與用法,結(jié)合實(shí)例形式詳細(xì)分析了Java內(nèi)部類(lèi)的相關(guān)概念、原理、訪問(wèn)、調(diào)用方法等操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-03-03使用Java語(yǔ)言將XML轉(zhuǎn)為PDF的方法
這篇文章主要介紹了使用Java語(yǔ)言將XML轉(zhuǎn)為PDF的方法,本文將介紹通過(guò)Java代碼來(lái)實(shí)現(xiàn)該格式轉(zhuǎn)換的方法,需要的朋友可以參考下2022-03-03關(guān)于logback.xml和logback-spring.xml的區(qū)別及說(shuō)明
這篇文章主要介紹了關(guān)于logback.xml和logback-spring.xml的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06Java中操作Xml使用方法備忘錄(Hutool工具類(lèi)XmlUtil、XStream)
這篇文章主要給大家介紹了關(guān)于Java中操作Xml使用方法(Hutool工具類(lèi)XmlUtil、XStream)的相關(guān)資料,XMLUtil是一個(gè)工具類(lèi),主要用于讀取XML配置文件并提供相應(yīng)的操作方法,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11Java快速實(shí)現(xiàn)圖書(shū)管理基本功能
隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展,計(jì)算機(jī)應(yīng)用的普及,利用計(jì)算機(jī)對(duì)圖書(shū)館的日常工作進(jìn)行管理勢(shì)在必行,本篇文章涵蓋一個(gè)圖書(shū)管理系統(tǒng)的基本功能實(shí)現(xiàn)代碼,大家可以查缺補(bǔ)漏,提升水平2022-05-05