天天看點

第二章 IoC Spring自動掃描和管理Bean2.9.1引入context命名空間2.9.2打開掃描功能2.9.3掃描标注了以下注解的類2.9.4擷取Bean2.9.5注解作用域

通過Spring容器自動掃描和管理Bean,我們不再需要在配置檔案中使用<bean>标簽管理Bean。

2.9.1引入context命名空間

如何引入命名空間及命名空間的寫法已經在之前的章節中詳細說過。具體可參考以下: http://blog.csdn.net/p_3er/article/details/9231307

2.9.2打開掃描功能

<context:component-scan base-package="cn.framelife.spring"/>
           

在打開掃描功能後,注解功能也打開了,是以不再需要再打開注解功能。

base-package是要掃描的類的包路徑。

2.9.3掃描标注了以下注解的類

@Service業務層元件,如service

@Controller控制層元件,如Struts中的Action

@Repository資料通路層元件,如dao

@Component當元件不好歸類時使用,泛指

上面幾個注解都是類範圍的,是以應該标注在類名的頭上。

2.9.4擷取Bean

在掃描的時候,Bean的id,如UserDaoImpl會預設為userDaoImpl。

但如果有需要,我們是可以修改這個預設名字的。

如:

@Service("userService")
public class UserServiceImpl implements UserService {
        //...
}
           

這個時候我們可以使用userService來擷取對象。

2.9.5注解作用域

@Service("userService")@Scope("prototype")
public class UserServiceImpl implements UserService {
      //...
}