如何在没有java双引号的情况下发送Jaxb XmlAttribute数据

2024-03-03

所以当我尝试使用 jaxb 从 java 类构建 xml 时遇到以下问题。 我的第一个标签需要是这样的:

<Entity Type=‘test-instance’>
Some xml
</Entity>

我需要第一个标签中写入一些内容,但最后一个标签只需要包含实体。

我创建了一个 claas 并添加了 name=Entity 的 @XMLRootElement 标签,并使用它我得到了正确的最后一个标签。如果我使用第一个标签和结束标签中的整个表达式,这对我没有帮助。

我使用 @XMLAttribute 添加了一个 String 变量,这样我就可以在 Entity 之后添加其他内容。问题是,如果我用值初始化变量,我将得到字符串双引号。例如

@XMLAttribute(name=“Type”)
String x = “test-instance”;

当我构建它时,它将显示:

<Entity Type=“test-instance”>

,带双引号,我只需要单引号。

如果在 xml 属性中使用我需要的完整描述,例如:

@XMLAttribute(name=“Type=‘test-instance’”)
String x;

这会工作得很好,但如果变量没有初始化,那么它不会添加任何东西,如果写类似 String x=“”; 然后我会得到:

<Entity Type=‘test-instance’=“”>

所以我无法删除来自我的字符串的引号。

我正在考虑对第一个实体标签进行硬编码,并在最后一个实体标签上以不同的方式关闭它,但找不到任何东西。

或者即使 String 未初始化,也可以设置 XMLAttribute 的另一个选项。我在 XMLElement 上看到一些类似“必需”的内容,但它不适用于 XMLAttribute,而且我不太确定它是否满足我的需要。

任何帮助将不胜感激。

Thanks


在 XML 应用程序中,原则应该是:

(a) 接收应用程序不应该关心 XML 的编写方式的无关紧要的词汇细节。 (实现此目的的最佳方法是使用受人尊敬的 XML 解析器来读取 XML。)

(b) 编写应用程序应该可以自由地使用他们认为方便的任何词汇约定。 (这意味着您可以使用任何受人尊敬的序列化库来编写 XML。)

属性的单引号或双引号的选择是这些无关紧要的词汇细节之一。

我们在 StackOverflow 上看到很多问题都是由于人们不遵守这些规则而造成的。

您还没有解释为什么需要生成单引号。也许 XML 正在被不遵循规则 (a) 的应用程序使用。在这种情况下你应该修复它!如果您无法解决这个问题,那么您的成本就会大大增加,事实上,使用 XML 根本没有任何意义。

有时,当我们问这个问题时,我们得到的答案是“因为客户坚持这样”。作为专业人士,我们的工作就是教育我们的客户:他们正在支付账单,将钱花在糟糕的工程上是不负责任的,即使这是他们所说的他们想要的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在没有java双引号的情况下发送Jaxb XmlAttribute数据 的相关文章

  • 非易失性领域的出版与阅读

    public class Factory private Singleton instance public Singleton getInstance Singleton res instance if res null synchron
  • 如何在 Android 应用程序中隐藏 Flutterwave API 密钥

    我正在构建一个 Android 应用程序 目前正在将 Flutterwave 集成到我的应用程序中以进行支付 建议我永远不要将 Flutterwave API 密钥放在我的应用程序上 那么我该如何隐藏这些键呢 我正在使用 Retrofit
  • 以相反的顺序打印任何集合中的项目?

    我在 使用 Java 进行数据结构和问题解决 一书中遇到以下问题 编写一个例程 使用 Collections API 以相反的顺序打印任何 Collection 中的项目 不要使用 ListIterator 我不会把它放在这里 因为我想让有
  • 使用 Exec Maven 插件分叉 Java,而不使用“exec”目标

    来自文档 https www mojohaus org exec maven plugin exec exec在单独的进程中执行程序和Java程序 exec java在同一虚拟机中执行 Java 程序 我想 fork 一个 java 程序
  • Java LostFocus 和 InputVerifier,按反向制表符顺序移动

    我有一个 GUI 应用程序 它使用 InputVerifier 在产生焦点之前检查文本字段的内容 这都是很正常的 然而 昨天发现了一个问题 这似乎是一个错误 但我在任何地方都找不到任何提及它的地方 在我将其报告为错误之前 我想我应该问 我在
  • 通过Zuul上传大文件

    我在通过 zuul 上传大文件时遇到问题 我正在使用 apache commons 文件上传 https commons apache org proper commons fileupload https commons apache o
  • 使用 OkHttp 下载损坏的文件

    我编写的下载文件的方法总是会产生损坏的文件 public static String okDownloadToFileSync final String link final String fileName final boolean te
  • Java AES 256 加密

    我有下面的 java 代码来加密使用 64 个字符密钥的字符串 我的问题是这会是 AES 256 加密吗 String keyString C0BAE23DF8B51807B3E17D21925FADF273A70181E1D81B8EDE
  • 如何更改 Swagger-ui URL 前缀?

    我正在使用 Springfox Swagger2 和 Spring boot 1 5 9 我可以通过此链接访问 swagger UI http localhost 8090 swagger ui html http localhost 80
  • IntelliJ Idea:将简单的 Java servlet(无 JSP)部署到 Tomcat 7

    我尝试按照教程进行操作here http wiki jetbrains net intellij Creating a simple Web application and deploying it to Tomcat部署 servlet
  • 如何向页面添加 HTML 页眉和页脚?

    如何使用 itext 从 html 源添加标题到 pdf 目前 我们已经扩展了 PdfPageEventHelper 并重写了这些方法 工作正常 但当我到达 2 个以上页面时 它会抛出 RuntimeWorkerException Over
  • 如何使用 Webpack 加载器导入 XML,而不自动转换为 JSON

    Webpack 4 的 xml loader 自动将导入的 XML 文件转换为 JSON 通过什么方式可以导入XMLwithout转换为 JSON XML 数据将使用现有的 应用程序专用的 XML 解析器进行处理 明确地说 我绝对愿意not
  • Lombok 不适用于 Eclipse Neon

    我下载了lombok jar lombok 1 16 14 jar 并将其放入我的下载中 然后我点击这个 jar 执行正确地识别了我的 MacOS 上的 Eclipse 实例 然后我选择了我想要的实例 Lombok也在pom xml中指定
  • 具有挑战性的问题 - 使用 PHP 对 XML 数据进行排序

    我有 xml 文件 其中包含大量产品数据 我需要根据我的字段 ProductRange 的数据对我的产品进行排序 ProductRange urldecode GET Range XML 文件数据
  • 我们如何使用 thymeleaf 绑定对象列表的列表

    我有一个表单 用户可以在其中添加任意数量的内容表对象这也可以包含他想要的列对象 就像在 SQL 中构建表一样 我尝试了下面的代码 但没有任何效果 并且当我尝试绑定两个列表时 表单不再出现 控制器 ModelAttribute page pu
  • titledBorder 标题中的图标

    您好 是否可以在 titledBorder 的标题中放置一个图标 例如以下代码 import java awt GridLayout import javax swing JFrame import javax swing JLabel i
  • Android计算两个日期之间的天数

    我编写了以下代码来查找两个日期之间的天数 startDateValue new Date startDate endDateValue new Date endDate long diff endDateValue getTime star
  • Android ScrollView,检查当前是否滚动

    有没有办法检查标准 ScrollView 当前是否正在滚动 方向是向上还是向下并不重要 我只需要检查它当前是否正在滚动 ScrollView当前形式不提供用于检测滚动事件的回调 有两种解决方法可用 1 Use a ListView并实施On
  • 确定 JavaFX 中是否消耗了事件

    我正在尝试使用 JavaFX 中的事件处理来做一些非滑雪道的事情 我需要能够确定手动触发事件后是否已消耗该事件 在以下示例中 正确接收了合成鼠标事件 但调用 Consumer 不会更新该事件 我对此进行了调试 发现 JavaFX 实际上创建
  • 使用 DBCP 配置 Tomcat

    在闲置一段时间 几个小时 后 我们收到了 CommunicationsException 来自 DBCP 错误消息 在异常中 位于这个问题的末尾 但我没有看到任何配置文件中定义的 wait timeout 我们应该看哪里 在 tomcat

随机推荐