注解配置和XML配置的优缺点比较

注解配置和XML配置的优缺点比较

一、简单总结下两者优缺点比较
注解简单概括:写起来比较简单、方便,看起来也简洁,但是修改麻烦。
Xml配置概括:写起来比较灵活、修改方便,但是写和维护麻烦。
二、XML
1、XML的优点
(1)xml是集中式的元数据,不需要和代码绑定的;在我们开发中,xml配置文件和代码类是区分开的。不需要绑定到代码中。
(2)使用xml配置可以让软件更具有扩展性;比如,我们在spring中,我们不想使用接口而是想用接口的实现类,这个时候只需要修改xml配置中bean的class值就可以了。
(3)对象之间的关系一目了然。
(4)xml定义:可扩展标记语言,标准通用标记语言的子集,简称XML。从这个定义中我们可以发现,xml最大的优势就在于,开发者(程序员)能够为软件量身定做使用的标记,使得xml更通俗易懂。
(5)成熟的校验机制,来保证正确。可以使用Schema或者是DTD来对xml的正确性进行校验。
(6)基于xml配置的时候,只需要修改xml即可,不需要对现有的程序进行修改。
(7)容易与其他系统进行数据交互。数据共享方便。
2、XML的缺点
(1)应用程序中如果使用了xml配置,需要解析xml的工具或者是是第三方类库的支持。
(2)解析xml的时候必然会占用资源,势必会影响到应用程序的性能;以java为例,无论是将xml一次性装置到内存中,还是一行一行读取解析的,都会占用资源的。
(3)xml配置文件过多,会导致维护变得困难。
(4)在程序编译期间无法对其配置项的正确性进行验证,只能在运行期发现。
(5)出错后,排错变得困难。往往在配置的时候,一个手误就会出现莫名其妙的错误(虽然事出必有妖,但是排查真难)。
比如,xml配置bean信息的时候,如果class的值带有空格,这种不好检查的,是比较麻烦的。排查起来很费事。
(6)开发的时候,既要维护代码又要维护配置文件,使得开发的效率降低。
(7)代码与配置项之间有时候会存在很多“潜规则”.改变了任意一方,都有可能影响到另一方的使用。这是个大坑。比如:自定义的标记,如果其他开发不清楚这些的话,修改了无论是代码还是xml的配置,都会导致程序不能正常运行。
(8)开发工具对xml的验证支持的不是很好。比如idea,对xml正确性,如果是自定义的,验证就不是很好。
三、注解
1、注解的优点
(1)注解的解析可以不依赖于第三方库,可以之间使用Java自带的反射。
(2)注解和代码在一起的,之间在类上,降低了维护两个地方的成本。
(3)注解如果有问题,在编译期间,就可以验证正确性,如果出错更容易找。
(4)使用注解开发能够提高开发效率。不用多个地方维护,不用考虑是否存在“潜规则”。
2、注解的缺点
(1)修改的话比较麻烦。如果需要对注解进行修改的话,就需要对整个项目重新编译。
(2)处理业务类之间的复杂关系,不然xml那样容易修改,也不及xml那样明了。
(3)在程序中注解太多的话,会影响代码质量,代码简洁会有影响。
(4)如果后来的人对注解不了解,会给维护带来成本。
(5)注解功能没有xml配置齐全。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值