23、JAXB 2.0:类型映射与数据转换的深入实践

JAXB 2.0:类型映射与数据转换的深入实践

1. JAXB 2.0 中使用 XmlAdapter 类实现类型映射

在 JAXB 2.0 中,当需要在单个模式上定义多个类型映射时,不能使用内联声明。虽然通过注解和绑定语言声明可以自定义 JAXB 2.0 的标准映射,但它们无法改变其基本结构。对于更激进地偏离标准映射的类型映射,需要使用 @XmlJavaTypeAdapter 注解和 XmlAdapter 类。

1.1 多元类型映射

多元类型映射涉及拆分、组合或混合模式定义以创建 Java 属性,其中不存在明确的一对一对应关系。例如,XML 中的两行地址映射到 Java 中的街道号码和街道名称,以及单个 xs:string 电话号码映射到 Java 中的区号、分机和号码。

下面是 corp:AddressType 的 XML 模式定义:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           elementFormDefault="qualified" targetNamespace="http://www.example.com/corp">
    <xs:complexType name="AddressType">
        <xs:sequence>
            <xs:element name="addrLine1" 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值