IOC容器 Bean管理 基於註解方式

2021-10-12 09:08:17 字數 3268 閱讀 8713

2.元件掃瞄配置

3.基於註解方式實現屬性注入

4.完全註解開發

​ (1)註解是**特殊標記,格式:@註解名稱(屬性名稱=屬性值, 屬性名稱=屬性值…)

​ (2)使用註解,註解作用在類上面,方法上面,屬性上面

​ (3)使用註解目的:簡化 xml 配置

​ 下面四個註解功能是一樣的,都可以用來建立 bean 例項

​ (1)@component

​ (2)@service

​ (3)@controller

​ (4)@repository

第一步 引入依賴 (引入spring-aop jar包)

spring-aop-5.2.6.release.jar

​第二步 開啟元件掃瞄

spring配置檔案中:

<

!--開啟元件掃瞄

1 如果掃瞄多個包,多個包使用逗號隔開

2 掃瞄包上層目錄

-->

package

="com.atguigu"

>

<

/context:component-scan>

第三步 建立類,在類上面新增建立物件註解

建立userservice

//在註解裡面 value 屬性值可以省略不寫,

//預設值是類名稱,首字母小寫

//userservice -- userservice

@component

(value =

"userservice"

)//註解等同於xml配置檔案:

public

class

userservice

}

第四步 測試**

public

class

testspringdemo

}

spring配置檔案中:

<

!--示例 1

use-

default

-filters=

"false" 表示現在不使用預設 filter,自己配置 filter

context:include-filter ,設定掃瞄哪些內容

-->

package

="com.atguigu" use-defaultfilters=

"false"

>

"annotation"

expression=

"org.springframework.stereotype.controller"

/>

<

!--代表只掃瞄controller註解的類--

>

<

/context:component-scan>

<

!--示例 2

下面配置掃瞄包所有內容

context:exclude-filter: 設定哪些內容不進行掃瞄

-->

package

="com.atguigu"

>

"annotation"

expression=

"org.springframework.stereotype.controller"

/>

<

!--表示controller註解的類之外一切都進行掃瞄--

>

<

/context:component-scan>

@autowired

@qualifier

@resource

@value

(1)@autowired:根據屬性型別進行自動裝配

​第一步 把 service 和 dao 物件建立,在 service 和 dao 類新增建立物件註解

第二步 在 service 注入 dao 物件,在 service 類新增 dao 型別屬性,在屬性上面使用註解

dao類**如下:

//dao實現類

@repository

//@repository(value = "userdaoimpl1")

public

class

userdaoimpl

implements

userdao

}

userservice類**如下:

@service

public

class

userservice

}

(2)@qualifier:根據名稱進行注入,這個@qualifier 註解的使用,和上面@autowired 一起使用

在userservice類中,配合@autowired使用:

//定義 dao 型別屬性

//不需要新增 set 方法

//新增注入屬性註解

@autowired

//根據型別進行注入

//根據名稱進行注入(目的在於區別同一介面下有多個實現類,根據型別就無法選擇,從而出錯!)

@qualifier

(value =

"userdaoimpl1"

)private userdao userdao;

//@resource //根據型別進行注入

@resource

(name =

"userdaoimpl1"

)//根據名稱進行注入

private userdao userdao;

(4)@value:注入普通型別屬性

@value

(value =

"abc"

)private string name

(1)建立配置類,替代 xml 配置檔案

@configuration

//作為配置類,替代 xml 配置檔案

@componentscan

(basepackages =

)public

class

springconfig

(2)編寫測試類

@test

public

void

testservice2()

IOC 操作 Bean 管理 基於註解方式

1 註解是 特殊標記,格式 註解名稱 屬性名稱 屬性值,屬性名稱 屬性值 2 使用註解,註解作用在類上面,方法上面,屬性上面 3 使用註解目的 簡化 xml 配置 1 component 用在bean層 2 service 用在service層 3 controller 用在dao層 4 repos...

IOC操作Bean管理(基於註解方式)

1.什麼是註解 註解是 的特殊標記,格式 註解名稱 屬性名稱 屬性值,屬性名稱 屬性值。使用註解,註解作用在類上面,方法宣告,屬性上面 使用註解的目的 簡化xml配置,使用更優雅 更簡潔的方式實現功能 2.spring針對bean管理中建立物件提供的註解 component 建議普通的元件 serv...

IOC容器 Bean管理 基於XML方式(一)

ioc容器 bean管理操作 spring ioc 控制反轉 建立和呼叫物件交給spring管理 使用ioc的目的 為了降低耦合度 xml解析 工廠模式 反射 ioc思想基於ioc容器完成,ioc底層就是物件工廠 ioc操作bean管理 a bean管理就是兩個操作 1 spring建立物件 2 s...