1. 程式人生 > 其它 >KKB:註解實現IOC

KKB:註解實現IOC

註解實現IOC : 包括物件的容器化管理 以及 物件的注入

1、配置檔案中增加context標籤等

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:p="http://www.springframework.org/schema/p"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd">

2、配置註解掃描:指定掃描包下所有類中的註解,掃描包時,會掃描所有的子孫包

3、註解新增在類名

  • @Component("物件名")
  • @Service("person")
  • @Controller("person")
  • @Repository("person")
  • @Scope(scopeName="singleton")
  • @Scope(scopeName="prototype")

4、註解在屬性

  • @value("屬性值")
  • @Autowired

特別說明,使用@Autowired註解在屬性上,預設使用的是根據型別匹配。所以說這裡可能就會出現之前提到的多個型別的錯誤。比如說,我們使用介面UserDao建立了物件,該介面的實現類有兩個,那麼此時的springDI,依賴注入不知道該使用哪一個實現類,就會報錯,我們可以通過指定@Qualifier("bean name")來指定確定的實現類

  • @Qualifier("bean name")
  • @Resource(name="物件名")

這裡的@Resource(name="物件名")相當於@Autowired +@Qualifier("bean name")

值得說明的是:使用註解的方式進行依賴注入,不會硬性要求具有屬性的構造方法和Set方法的,即是你沒有寫構造方法和set方法也是可以正常執行的,而之前使用的配置檔案方法是需要具有set方法和無參構造

5、註解還可以新增在方法上(用得少)