当前位置: 首页 > 知识库问答 >
问题:

注释与XML,优缺点[重复]

强硕
2023-03-14

我是这里的java新手,我在阅读注释和xml,我个人发现xml有很多优点,比如它可以放在应用程序之外,可以在不重新编译类文件的情况下进行更改。如果我使用注释,如果我需要进行更改,则需要转到源代码并重新编译。如果是这样,我们为什么要使用注释

共有3个答案

鲁鸿朗
2023-03-14

这个问题实际上很难用简短的答案来回答。

基本上,所有形式的配置都有利弊。注释、xml或基于Java的配置。所有的利弊都是100%有效的。他们的主要目标是一致性。确保项目中的每个人都遵循相同的规则。

这也不是一个或两者中的任何一个的问题,哪一个在另一个之上。因为您可以在应用程序中使用任何配置选项组合。一个或全部三个组合。你只需要制定规则并坚持

所以我个人的观点是。记住,这都是我的意见,不是事实。

1) 注释胜过其他所有注释,因为我可以更快地配置和编写代码。2)基于Java的配置,用于那些我无法注释的bean(它们不是我的类,所以我没有添加注释的源代码)。3)xml,或者我需要它在我的类包之外完全外部化,我不想重新编译和重新打包。(非常罕见,好像我还从来没有遇到过我需要这个)

阎智
2023-03-14

首先,我们为更多的事情使用注释,而不仅仅是配置。

现在:使用注释进行配置的一些优势

可读性。例如,在JPA配置中,通过注释而不是hbm来声明新实体要干净得多。xml文件。这些东西只会在开发阶段更改,所以重新编译代码没有问题。当您使用xml文件时,您必须经常打开实体和hbm文件来进行更改。。这可能会导致一些错误。

灵活性。在XML文件中,您必须以“只有一种正确的方式”编写所有配置。这是优点也是缺点。

长基于XML的配置通常很长(如pom或hbm)。注释的使用要简单得多。

尚棋
2023-03-14

注释的优点:

1) 所有信息都在一个文件中(无需打开两个文件来配置给定的行为)
2)当类更改时,无需修改xml文件

xml文件的优点:

1)POJO与其行为之间的明确分离
2)当您不知道哪个POJO对该行为负责时,更容易找到POJO(在文件子集而不是所有源代码中搜索)

 类似资料:
  • 问题内容: 当我查看Hibernate,JPA或Spring之类的Java框架时,通常可以通过xml文件进行配置,或者直接在类中添加注释。 我一直在问自己应该走哪条路。 当我使用批注时,我将类及其配置放在一起,但是使用xml可以更全面地了解我的系统,因为我可以看到所有的类配置。 我还以某种方式对注释进行了编译,它应该比解析xml更快,但是,另一方面,如果我想更改配置,则必须重新编译它,而不仅仅是更

  • 问题内容: 今天,在尝试学习有关JavaFX和Java的更多信息时,我遇到了我不太了解的另一件事。 参考是以下教程(旨在将原理应用到组织者): JavaFX 8教程 我将简要概述我遇到问题的特定部分: 我的主窗口包含一个显示一些约会数据的表格视图。所以我得到了这种风格的几行(与本教程相同): 可以通过附加的EditDialog操纵数据。那很好。如果我编辑内容,则更改会立即显示,但我进行了一些其他研

  • 问题内容: 我考虑过摆脱所有客户端Ajax调用(jQuery),而是使用永久套接字连接(Socket.IO)。 因此,我将在客户端和服务器端使用事件侦听器/发射器。 例如 用户在浏览器中触发click事件,客户端发射器通过套接字连接将事件推送到服务器。服务器端侦听器对传入事件做出反应,并将“完成”事件推回客户端。客户端的侦听器通过淡入DIV元素来响应传入的事件。 这完全有意义吗?优点缺点? 问题答

  • 问题内容: Hibernate和EJB3相对于彼此的优缺点是什么? 我找到了这篇文章,但并没有真正解决我的问题。如果我对这两种技术没有任何特别的联系,那是什么导致我选择一项而不是另一项呢?还是在某些情况下我想同时使用两者? 谢谢 编辑:回应评论:我对EJB3不太了解。 我只是想了解它是否对我的公司可行。如果EJB3与Hibernate不兼容,请解释原因。 问题答案: JPA提供了Hibernate

  • 本文向大家介绍解释TCP / IP模型的优缺点,包括了解释TCP / IP模型的优缺点的使用技巧和注意事项,需要的朋友参考一下 TCP / IP表示传输控制协议/ Internet协议。它是由美国国防高级研究计划局(ARPA,后来的DARPA)在1970年代后期创建的。 它是通信协议的集合。此外,它涉及用于管理分组传输,媒体访问,会话交互,数据传输,电子邮件和终端仿真的收集和方法。 TCP / I

  • 问题内容: 我正在检查是否存在目录,但是我注意到我正在使用而不是。两者都很好,但是我很好奇使用代替的优势。 问题答案: 如果存在具有该名称的常规文件,也将返回。 仅当该路径存在且为目录或指向目录的符号链接时才返回。