05_IoC的"零配置"

使用标签简化IoC配置:

1.使用标签来完成IoC,就必须有IoC标签的解析器 ,使用context:component-scan来扫描spring需要管理的bean
,base-package就告诉spring,去哪些包及其子包里去扫描bean,如果有多个包需要被扫描;只需要用逗号隔开多个包即可

<context:component-scan base-package="com.zoe.xxx" />

2.标注Bean的注解:@Component
默认情况,直接使用类的名字(首字母小写作为bean的名字)
如果要修改bean的名称;直接使用value属性来重新定义bean的名称

@Component("otherbean")
public class OtherBean {}

3.使用@Component的限制:
1),不能运用到静态工厂方法和实例工厂方法,但是可以使用到FactoryBean;
2),对于没有源代码的类(框架内部的预定义类),只能用XML配置,不能使用注解配置如DataSource;

4.bean组件版型标签
bean组件版型(本质没有区别,仅仅是清晰的表示适用于哪一层而已):

@Service用于标注业务层组件、
@Controller用于标注控制层组件(如struts中的action)、
@Repository用于标注数据访问组件,即DAO组件。
@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。

5.指定bean的作用域:@Scope(“prototype”)

@Component("otherbean")
@scope("singleton")
public class OtherBean {}

6.初始化和销毁方法:@PostConstruct和@PreDestroy

@PostConstruct  //构造之后
public void init() {

相当于

<bean init-method="init" />

@PreDestroy  //销毁之前
  public void destory() {

相当于

<bean destroy-method="destory" />

使用XML来完成IOC和DI以及使用Annotation来完成IOC和DI的选择:

使用XML: 清晰明了,集中管理,配置太多了,文件臃肿.

使用注解: 清晰明了,文件轻巧,配置太分散了,不能统一做配置,又让硬编码回到代码中去了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值