通过Spring容器自动扫描和管理Bean,我们不再需要在配置文件中使用<bean>标签管理Bean。
2.9.1引入context命名空间
如何引入命名空间及命名空间的写法已经在之前的章节中详细说过。具体可参考以下:
2.9.2打开扫描功能
<context:component-scan base-package="cn.framelife.spring"/>
在打开扫描功能后,注解功能也打开了,所以不再需要再打开注解功能。
2.9.3扫描标注了以下注解的类
@Service业务层组件,如service
@Controller控制层组件,如Struts中的Action
@Repository数据访问层组件,如dao
上面几个注解都是类范围的,所以应该标注在类名的头上。
2.9.4获取Bean
在扫描的时候,Bean的id,如UserDaoImpl会默认为userDaoImpl。
但如果有需要,我们是可以修改这个默认名字的。
如:
@Service("userService") public class UserServiceImpl implements UserService { //... }
2.9.5注解作用域
@Service("userService")@Scope("prototype") public class UserServiceImpl implements UserService { //... }