O/X mapping概念及JAXB简介

2024-03-11 12:18
文章标签 概念 简介 mapping jaxb

本文主要是介绍O/X mapping概念及JAXB简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Object/XML Mapping (O/X mapping)指XML文档与Java对象之间的映射关系。

XML Marshalling(也称为XML Serialization)是指在XML文档与Java对象之间的转换过程。

将Java对象转换为XML文档,称为marshaller 。

将XML文档转换为Java对象,称为unmarshaller 。


常见的O/Xmapping API:

  • JAXB
  • XMLBeans
  • JiBX
  • Castor
  • XStream


JAXB specification provides a way to map Java classes to XMLrepresentations,是JCP的标准之一:

  • JAXB 1.0,JSR-31
  • JAXB 2.0/2.1/2.2,JSR-222

JAXB RI是JAXB规范的实现。JAXB project的主要目的就是开发并维护JAXB RI,当前最新版是2014.10发布的JAXB RI 2.2.11。

此外,JAXB project还提供了如下扩展工具:

  • Jsonix - JAXB analog for JavaScript
  • Hyperjaxb3 - relational persistence for JAXB objects with JPA (Hibernate,TopLink etc.)
  • XJCplugins - variousenhancements to XJC developed by the community
  • MavenJAXB2 Plugin - actualMaven plugin for JAXB2
  • JAXB2reflection library
  • JAXBIntroductions - put JAXBannotations on 3rd party classes
  • Annox - allows defining JAXB annotations in XML resources
  • JAXB Workshop, Eclipse Plugins

 

从JDK6开始,JavaArchitecture for XML Binding (JAXB) 成为JDK的组成部分:

  • JAXB RI 2.0.3 in JDK 6 first release - JDK6 u3
  • JAXB 2.0 in JavaEE 5
  • JAXB RI 2.1.3 in JDK 6 u4
  • JAXB RI 2.1.10 in JDK 6 u14
  • JAXB RI 2.2.4-1 in JDK 7 first release
  • JAXB 2.2.4 in JavaEE 6 
  • JAXB RI 2.2.4-2 in JDK 7 u6
  • JAXB 2.2.11 in JDK 8 
  • JAXB 2.2.11 in JavaEE 7 

  

two features of JAXB:

  • to marshal Java objects into XML
  • to unmarshal XML back into Java objects

 

1.     XML Schema -> Java class

JAXB provides“xjc” tool to convert XML Schema to class representations.

JAXB bindingcompiler xjc is also part of the JDK6,it is a command line tool which can beused togenerate binding classes basedon an existing XSD schema description.

 

2.      Javaclass -> XML Schema

JAXB includes a“schemagen” tool which can create an XML Schema from a set of annotatedclasses.


 

参考文献:

JAXB project官网https://jaxb.java.net/

 

这篇关于O/X mapping概念及JAXB简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/797780

相关文章

每天认识几个maven依赖(ActiveMQ+activemq-jaxb+activesoap+activespace+adarwin)

八、ActiveMQ 1、是什么? ActiveMQ 是一个开源的消息中间件(Message Broker),由 Apache 软件基金会开发和维护。它实现了 Java 消息服务(Java Message Service, JMS)规范,并支持多种消息传递协议,包括 AMQP、MQTT 和 OpenWire 等。 2、有什么用? 可靠性:ActiveMQ 提供了消息持久性和事务支持,确保消

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

业务协同平台--简介

一、使用场景         1.多个系统统一在业务协同平台定义协同策略,由业务协同平台代替人工完成一系列的单据录入         2.同时业务协同平台将执行任务推送给pda、pad等执行终端,通知各人员、设备进行作业执行         3.作业过程中,可设置完成时间预警、作业节点通知,时刻了解作业进程         4.做完再给你做过程分析,给出优化建议         就问你这一套下

【VUE】跨域问题的概念,以及解决方法。

目录 1.跨域概念 2.解决方法 2.1 配置网络请求代理 2.2 使用@CrossOrigin 注解 2.3 通过配置文件实现跨域 2.4 添加 CorsWebFilter 来解决跨域问题 1.跨域概念 跨域问题是由于浏览器实施了同源策略,该策略要求请求的域名、协议和端口必须与提供资源的服务相同。如果不相同,则需要服务器显式地允许这种跨域请求。一般在springbo

容器编排平台Kubernetes简介

目录 什么是K8s 为什么需要K8s 什么是容器(Contianer) K8s能做什么? K8s的架构原理  控制平面(Control plane)         kube-apiserver         etcd         kube-scheduler         kube-controller-manager         cloud-controlle

【Tools】AutoML简介

摇来摇去摇碎点点的金黄 伸手牵来一片梦的霞光 南方的小巷推开多情的门窗 年轻和我们歌唱 摇来摇去摇着温柔的阳光 轻轻托起一件梦的衣裳 古老的都市每天都改变模样                      🎵 方芳《摇太阳》 AutoML(自动机器学习)是一种使用机器学习技术来自动化机器学习任务的方法。在大模型中的AutoML是指在大型数据集上使用自动化机器学习技术进行模型训练和优化。

【MRI基础】TR 和 TE 时间概念

重复时间 (TR) 磁共振成像 (MRI) 中的 TR(重复时间,repetition time)是施加于同一切片的连续脉冲序列之间的时间间隔。具体而言,TR 是施加一个 RF(射频)脉冲与施加下一个 RF 脉冲之间的持续时间。TR 以毫秒 (ms) 为单位,主要控制后续脉冲之前的纵向弛豫程度(T1 弛豫),使其成为显著影响 MRI 中的图像对比度和信号特性的重要参数。 回声时间 (TE)

计算机网络基础概念 交换机、路由器、网关、TBOX

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VLAN是什么?二 、交换机三、路由器四、网关五、TBOXTelematics BOX,简称车载T-BOX,车联网系统包含四部分,主机、车载T-BOX、手机APP及后台系统。主机主要用于车内的影音娱乐,以及车辆信息显示;车载T-BOX主要用于和后台系统/手机APP通信,实现手机APP的车辆信息显示与控

SaaS、PaaS、IaaS简介

云计算、云服务、云平台……现在“云”已成了一个家喻户晓的概念,但PaaS, IaaS 和SaaS的区别估计还没有那么多的人分得清,下面就分别向大家普及一下它们的基本概念: SaaS 软件即服务 SaaS是Software-as-a-Service的简称,意思是软件即服务。随着互联网技术的发展和应用软件的成熟, 在21世纪开始兴起的一种完全创新的软件应用模式。 它是一种通过Internet提供

01 Docker概念和部署

目录 1.1 Docker 概述 1.1.1 Docker 的优势 1.1.2 镜像 1.1.3 容器 1.1.4 仓库 1.2 安装 Docker 1.2.1 配置和安装依赖环境 1.3镜像操作 1.3.1 搜索镜像 1.3.2 获取镜像 1.3.3 查看镜像 1.3.4 给镜像重命名 1.3.5 存储,载入镜像和删除镜像 1.4 Doecker容器操作 1.4