当前位置: 首页 > 图文教程 > XML家族 > XML > xml和Annotation作为配置项的优缺点

XML
XML技术入门
javascript操作xml
XML操作集合
C#操作xml
XML(二)
java中四种操作xml方式的比较
使用JAVA语言来更新XML文档的常用方法
用JavaScript生成XML
XML配置文件的读取处理
分治法解决级联对象与相应XML的转化
XML和JSP的联手,强不强?
XML在B/S架构开发中的应用
使用DOM创建XML
XML:详解XML各种解析方法(一)
XML:详解XML各种解析方法(二)
XML:浅谈如何使用.NET存储XML数据
XML:XML HttpRequst基础方法介绍
XML:Xml之读取与汇出的使用
XML:XML的那些事
XML:XLink 与HTML 链接的对比

XML 中的 xml和Annotation作为配置项的优缺点


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-03-20   浏览: 377 ::
收藏到网摘: n/a

Java Annotation 基础》中我们简单地介绍了 Java Annotation 的作用以及 Java 标准的 Annotation 。今天我们来了解一下 xml 和 Annotation 各自作为配置项的优缺点。

  首先说说 xml 。目前 web 应用中几乎都使用 xml 作为配置项,例如我们常用的框架 Struts、Spring、Hibernate、IBatis 等等都采用 xml 作为配置。xml 之所以这么流行,是因为它的很多优点是其它技术的配置所无法替代的。
  1、xml 作为可扩展标记语言最大的优势在于开发者能够为软件量身定制适用的标记,使代码更加通俗易懂。
  2、利用 xml 配置能使软件更具扩展性。例如 Spring 将 class 间的依赖配置在 xml 中,最大限度地提升应用的可扩展性。
  3、具有成熟的验证机制确保程序正确性。利用 Schema 或 DTD 可以对 xml 的正确性进行验证,避免了非法的配置导致应用程序出错。
  4、修改配置而无需变动现有程序。

  虽然有如此多的好处,但毕竟没有什么万能的东西,xml 也有自身的缺点。
  1、需要解析工具或类库的支持。
  2、解析 xml 势必会影响应用程序性能,占用系统资源。
  3、配置文件过多导致管理变得困难。
  4、编译期无法对其配置项的正确性进行验证,或要查错只能在运行期。
  5、IDE 无法验证配置项的正确性无能为力。
  6、查错变得困难。往往配置的一个手误导致莫名其妙的错误。
  7、开发人员不得不同时维护代码和配置文件,开发效率变得低下。
  8、配置项与代码间存在潜规则。改变了任何一方都有可能影响另外一方。

  让我们来看看 Annotation 的优点。
  1、保存在 class 文件中,降低维护成本。
  2、无需工具支持,无需解析。
  3、编译期即可验证正确性,查错变得容易。
  4、提升开发效率。

  同样 Annotation 也不是万能的,它也有很多缺点。
  1、若要对配置项进行修改,不得不修改 Java 文件,重新编译打包应用。
  2、配置项编码在 Java 文件中,可扩展性差。

  总结:没有一个事物是万能的,同样 xml 和 Java Annotation 都有各自的优缺点。通过以上对比,细心的读者可能已经发现它们的优缺点恰恰是互补的。xml 的强项是 Annotation 所不具备的,而 Annotation 的优势也是 xml 所欠缺的。这也正是时下流行的 xml + Annotation 配置的原因所在。在下一篇日志中,我们将使用 xml 和 Annotation 以及 xml + Annotation 各自完成简单的对象注射功能,使读者更加深入地了解 xml 和 Annotation 的作用。