当前位置: 首页 > news >正文

JAXB的XmlAttribute注解

  • JAXB的XmlAttribute注解,将一个JavaBean属性映射到一个XML属性。

例如,下面的Java代码,将属性currency映射到了XML的属性currency:

package com.thb;import jakarta.xml.bind.annotation.XmlAttribute;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.annotation.XmlType;
import jakarta.xml.bind.annotation.XmlValue;@XmlRootElement
@XmlType(name = "", propOrder = {"value"})
public class Price {@XmlValuepublic String value;@XmlAttribute(name = "currency")public String currency;
}

生成的XML Schema:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="price"><xs:complexType><xs:simpleContent><xs:extension base="xs:string"><xs:attribute name="currency" type="xs:string"/></xs:extension></xs:simpleContent></xs:complexType></xs:element>
</xs:schema>
  • XmlAttribute的required属性指定被注解的属性是否必选。
    例如下面代码,Java属性currency用@XmlAttribute(name = "currency", required = true)注解,指明xml属性currency是必选的:
package com.thb;import jakarta.xml.bind.annotation.XmlAttribute;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.annotation.XmlType;
import jakarta.xml.bind.annotation.XmlValue;@XmlRootElement
@XmlType(name = "", propOrder = {"value"})
public class Price {@XmlValuepublic String value;@XmlAttribute(name = "currency", required = true)public String currency;
}

生成的XML Schema,属性currency中出现了use="required"

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="price"><xs:complexType><xs:simpleContent><xs:extension base="xs:string"><xs:attribute name="currency" type="xs:string" use="required"/></xs:extension></xs:simpleContent></xs:complexType></xs:element>
</xs:schema>
http://www.lryc.cn/news/250658.html

相关文章:

  • 【代码】基于改进差分进化算法的微电网调度研究matlab
  • 计算机基础知识63
  • springboot虚拟请求——测试
  • 计算机视觉各个方向概述
  • AIGC: 关于ChatGPT中API接口调用相关准备工作
  • 【Java Web学习笔记】 1 - HTML入门
  • 基于windows系统使用Python对于pc当前的所有窗口的相关操作接口
  • 30秒搞定一个属于你的问答机器人,快速抓取网站内容
  • JPA数据源Oracle异常记录
  • 抽奖送平板是骗局!!!
  • json.decoder.JSONDecodeError: Extra data: line 1 column 332 (char 331)
  • rust持续学习 COW
  • 【计算机网络】14、DHCP
  • 【FPGA】Verilog:计数器 | 异步计数器 | 同步计数器 | 2位二进制计数器的实现 | 4位十进制计数器的实现
  • IDEA常用快捷键
  • 【2024秋招】2023-10-17 金山云文档服务端二面
  • 一种excel多线程并发写sheet的方案
  • 深入了解接口测试:揭秘网络分层和数据处理!
  • Java并发编程
  • vue+echarts实现依赖关系无向网络拓扑结图节点折叠展开策略
  • Unity3d 灯光阴影开启,法线贴图出现BUG
  • c语言:模拟实现atoi函数
  • Docker 使用心得
  • Nacos 架构原理
  • 尝试修改vim光标的思路
  • SpringBoot整合Activiti7——消息事件(十)
  • 高翔:《自动驾驶与机器人中的SLAM技术 》-Slam_in_autonomous_driving 编译过程中遇到的问题
  • org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder 实现密码加密 验证 代码示例
  • 《微信小程序开发从入门到实战》学习三十八
  • 云服务器哪家便宜?亚马逊AWS等免费云服务器推荐