欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring自動(dòng)裝配與掃描注解代碼詳解

 更新時(shí)間:2017年12月23日 11:16:20   作者:光何  
這篇文章主要介紹了Spring自動(dòng)裝配與掃描注解代碼詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下。

1 javabean的自動(dòng)裝配

自動(dòng)注入,減少xml文件的配置信息。

<?xml version="1.0" encoding="UTF-8"?>
<!-- 到入xml文件的約束 -->
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">
  <!-- 1 實(shí)例化Dao對(duì)象 id:完成對(duì)象的引用 class:指定需要?jiǎng)?chuàng)建的對(duì)象對(duì)應(yīng)的類的完全限定名 -->
  <bean id="usersDao" class="org.guangsoft.dao.impl.UsersDaoImpl">
  </bean>
  <!-- 2實(shí)例化service autowire:屬性的作用,完成對(duì)象依賴之間的自動(dòng)裝配 no(默認(rèn)執(zhí)行) byName:使用需要注入的屬性對(duì)應(yīng)的set的方法名字和spring容器中的對(duì)象的id進(jìn)行匹配,如果能匹配上,進(jìn)行自動(dòng)注入 
    byType:使用需要注入的屬性對(duì)應(yīng)的set的方法參數(shù)類型和spring容器中的對(duì)象的類型進(jìn)行匹配,如果能匹配上,進(jìn)行自動(dòng)注入 constructor:在byName和byType之間進(jìn)行選擇(首先byName,如果byName不匹配再byType) 
    實(shí)際使用:byName -->
  <bean id="usersService" class="org.guangsoft.service.impl.UsersServiceImpl"
    autowire="byType">
  </bean>
  <!-- 3實(shí)例化Action對(duì)象 -->
  <bean id="usersAction" class="org.guangsoft.action.UsersAction"
    autowire="byType">
  </bean>
</beans>

2 spring的掃描注解

使用spring的掃描注解,重構(gòu)三層結(jié)構(gòu)。配置更少的內(nèi)容

在applicationContext.xml文件中,導(dǎo)入掃描的xsd

l 開啟注解掃描

<?xml version="1.0" encoding="UTF-8"?>
<!-- 到入xml文件的約束 -->
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:context="http://www.springframework.org/schema/context" [ A1 ]
  xmlns:p="http://www.springframework.org/schema/p" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-4.1.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-4.1.xsd
   ">
  <!-- 開啟注解掃描 base-package屬性:指定需要掃描的包,多個(gè)包之間使用,號(hào)隔開 a.b.c a.b.d a.b.e -->
  <context:component-scan
    base-package="org.guangsoft.dao.impl,
    org.guangsoft.service.impl,org.guangsoft.action"></context:component-scan>
</beans>

注解進(jìn)行總結(jié)

類注解:

@controller(給web層的注解)

@service(給serivce層加的注解)

@repository(給dao層加的注解)

@component(給java類加注解,老版本spring只有這一個(gè)注解)

以上三個(gè)注解:將對(duì)應(yīng)的類納入spring容器中對(duì)應(yīng)的

Id:類名第一個(gè)字母小寫(默認(rèn))

如果需要自己指定id需要給三個(gè)注解加入String類的參數(shù)

@controller(“uAction”)id=uAction

@resouce(給需要依賴的對(duì)象屬性加的注解)

通過(guò)自動(dòng)裝配完成需要依賴屬性的注入。

參數(shù):name:按照byName進(jìn)行自動(dòng)裝配

參數(shù):type:按照byType進(jìn)行自動(dòng)裝配

注解執(zhí)行過(guò)程

1,加載spring的容器

2,掃描spring容器中指定包

3,掃描指定的包中,加了三個(gè)類注解的類,然后將該類納入spring容器

4,<beanid=””class=””>

5,掃描類中被加入@resource注解的屬性,然后按照自動(dòng)裝配的方式進(jìn)行關(guān)系建立

6,Autowrie

總結(jié)

以上就是本文關(guān)于Spring自動(dòng)裝配與掃描注解代碼詳解的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

基于注解的組件掃描詳解

spring配置掃描多個(gè)包問題解析

如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • Spring將MultipartFile轉(zhuǎn)存到本地磁盤的三種方式

    Spring將MultipartFile轉(zhuǎn)存到本地磁盤的三種方式

    在Java中處理文件向來(lái)是一種不是很方便的操作,然后隨著Spring框架的崛起,使用Spring框架中的MultipartFile來(lái)處理文件也是件很方便的事了,今天就給大家介紹Spring將MultipartFile轉(zhuǎn)存到本地磁盤的方式,需要的朋友可以參考下
    2024-10-10
  • Java實(shí)現(xiàn)多個(gè)數(shù)組間的排列組合

    Java實(shí)現(xiàn)多個(gè)數(shù)組間的排列組合

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)多個(gè)數(shù)組間的排列組合,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Spring整合junit的配置過(guò)程圖解

    Spring整合junit的配置過(guò)程圖解

    這篇文章主要介紹了Spring整合junit的配置過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Java抽獎(jiǎng)?chuàng)屬?gòu)算法

    Java抽獎(jiǎng)?chuàng)屬?gòu)算法

    這篇文章主要為大家詳細(xì)介紹了Java抽獎(jiǎng)?chuàng)屬?gòu)算法,ava實(shí)現(xiàn)的抽獎(jiǎng)?chuàng)屬?gòu)算法,用數(shù)據(jù)庫(kù)行鎖實(shí)現(xiàn),支持集群,感興趣的小伙伴們可以參考一下
    2016-08-08
  • java實(shí)現(xiàn)簡(jiǎn)單的英文文本單詞翻譯器功能示例

    java實(shí)現(xiàn)簡(jiǎn)單的英文文本單詞翻譯器功能示例

    這篇文章主要介紹了java實(shí)現(xiàn)簡(jiǎn)單的英文文本單詞翻譯器功能,涉及java文件讀取、字符串分割、遍歷、判斷等相關(guān)操作技巧,需要的朋友可以參考下
    2017-10-10
  • Java對(duì)象數(shù)組的添加、刪除和遍歷代碼示例

    Java對(duì)象數(shù)組的添加、刪除和遍歷代碼示例

    在Java編程中,我們經(jīng)常需要對(duì)數(shù)據(jù)結(jié)構(gòu)進(jìn)行遍歷操作,并根據(jù)業(yè)務(wù)需求刪除部分元素,這篇文章主要給大家介紹了關(guān)于Java對(duì)象數(shù)組的添加、刪除和遍歷的相關(guān)資料,需要的朋友可以參考下
    2024-04-04
  • JAVA利用HttpClient進(jìn)行POST請(qǐng)求(HTTPS)實(shí)例

    JAVA利用HttpClient進(jìn)行POST請(qǐng)求(HTTPS)實(shí)例

    下面小編就為大家?guī)?lái)一篇JAVA利用HttpClient進(jìn)行POST請(qǐng)求(HTTPS)實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起 小編過(guò)來(lái)看看吧
    2016-11-11
  • Java定義泛型方法實(shí)例分析

    Java定義泛型方法實(shí)例分析

    這篇文章主要介紹了Java定義泛型方法,結(jié)合實(shí)例形式分析了java定義泛型的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2019-07-07
  • Mybatis調(diào)用存儲(chǔ)過(guò)程的案例

    Mybatis調(diào)用存儲(chǔ)過(guò)程的案例

    這篇文章主要介紹了Mybatis如何調(diào)用存儲(chǔ)過(guò)程,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • 簡(jiǎn)單了解Java垃圾回收器的種類

    簡(jiǎn)單了解Java垃圾回收器的種類

    這篇文章主要介紹了簡(jiǎn)單了解Java垃圾回收器的種類,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12

最新評(píng)論