spring配置: Annotation vs XML

项目上大量用到Spring的相关组件,发现spring官网上的说明文档基本都基于annotation的方式,而自己之前还是采用xml的方式进行配置。

为了更好的指导今后的开发工作,花时间对比了一下2种配置的差异,总结如下:


Annotation

1、可以利用Java的反射,减少一些不必要的配置工作。例如:JAP配置进行ORM(优点)

2、可以比较方便的进行细粒度的控制,例如:@Transactional@Cacheable可直接指定到接口维度(即是优点、也是缺点)

3、配置和代码混合在一起,单一依赖比较直观,不用频繁切换至xml中查看关系,但也导致了配置项比较零散(即是优点、也是缺点)

4、第三方库无法进行注解(缺点)

5、配置关系调整时,涉及的类必须重新编译才能生效(缺点)


XML

1、配置项集中,便于管理(优点)

2、配置关系调整比较灵活,直接修改配置项重新加载即可,代码无需修改(优点)

3、支持通配符方式进行批量配置,列如:AOP直接切一整类方法(优点)

4、配置文件编写比较繁琐,缺乏有效的校验机制,部分错误到运行时才能察觉(缺点)


应用建议

综上所述,建议采用Annotation和xml混合的方式进行spring配置:

1、对于配置关系固定的类,或是需要细粒度控制的配置项,优先使用Annotation进行配置

2、对于配置变化较为频繁的部分(如数据源),或是需要粗粒度统配的,优先采用XML进行配置



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值