我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Jaxb2中如何将avaBean转换为xml

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Jaxb2中如何将avaBean转换为xml

Jaxb2中如何将avaBean转换为xml?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

一、简介

JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到 XML实例文档。

Jaxb 2.0是JDK 1.6的组成部分。我们不需要下载第三方jar包 即可做到轻松转换。Jaxb2使用了JDK的新特性,如:Annotation、GenericType等,需要在即将转换的JavaBean中添加annotation注解。

二、重要概念

JAXBContext类,是应用的入口,用于管理XML/Java绑定信息。

Marshaller接口,将Java对象序列化为XML数据。

Unmarshaller接口,将XML数据反序列化为Java对象。

@XmlType,将Java类或枚举类型映射到XML模式类型

@XmlAccessorType(XmlAccessType.FIELD) ,控制字段或属性的序列化。FIELD表示JAXB将自动绑定Java类中的每个非静态的(static)、非瞬态的(由@XmlTransient标 注)字段到XML。其他值还有XmlAccessType.PROPERTY和XmlAccessType.NONE。

@XmlAccessorOrder,控制JAXB 绑定类中属性和字段的排序。

@XmlJavaTypeAdapter,使用定制的适配器(即扩展抽象类XmlAdapter并覆盖marshal()和unmarshal()方法),以序列化Java类为XML。

@XmlElementWrapper ,对于数组或集合(即包含多个元素的成员变量),生成一个包装该数组或集合的XML元素(称为包装器)。

@XmlRootElement,将Java类或枚举类型映射到XML元素。

@XmlElement,将Java类的一个属性映射到与属性同名的一个XML元素。

@XmlAttribute,将Java类的一个属性映射到与属性同名的一个XML属性。

三、示例

准备工作

package utils;import java.io.StringReader;import java.io.StringWriter;import javax.xml.bind.JAXBContext;import javax.xml.bind.Marshaller;import javax.xml.bind.Unmarshaller;public class JaxbUtil {    public static String convertToXml(Object obj) {    return convertToXml(obj, "UTF-8");  }    public static String convertToXml(Object obj, String encoding) {    String result = null;    try {      JAXBContext context = JAXBContext.newInstance(obj.getClass());      Marshaller marshaller = context.createMarshaller();      marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);      marshaller.setProperty(Marshaller.JAXB_ENCODING, encoding);      StringWriter writer = new StringWriter();      marshaller.marshal(obj, writer);      result = writer.toString();    } catch (Exception e) {      e.printStackTrace();    }    return result;  }    @SuppressWarnings("unchecked")  public static <T> T converyToJavaBean(String xml, Class<T> c) {    T t = null;    try {      JAXBContext context = JAXBContext.newInstance(c);      Unmarshaller unmarshaller = context.createUnmarshaller();      t = (T) unmarshaller.unmarshal(new StringReader(xml));    } catch (Exception e) {      e.printStackTrace();    }    return t;  }}

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Jaxb2中如何将avaBean转换为xml

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Jaxb2中如何将avaBean转换为xml

Jaxb2中如何将avaBean转换为xml?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、简介JAXB(Java Architecture for XML Bindin
2023-05-31

php如何将xml转换成数组

这篇文章给大家分享的是有关php如何将xml转换成数组的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php将xml转换成数组的方法:首先将xml数据转成object(对象)格式的数据;然后使用json_encod
2023-06-08

php中怎么怎么将数组转换为xml

这篇文章给大家介绍php中怎么怎么将数组转换为xml,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。php将数组转为xml的方法:首先创建一个PHP示例文件;然后通过“function data_to_xml($data
2023-06-20

如何将NSInteger转换为NSTimeInterval

要将NSInteger转换为NSTimeInterval,可以使用NSTimeInterval的构造函数将NSInteger转换为NSTimeInterval。NSTimeInterval是一个双精度浮点数,表示自1970年1月1日以来的秒
2023-09-26

如何将RTF转换为HTML

RTF是一种用于文本编辑和文件交换的文件格式。HTML是一种用于创建网页的标记语言。虽然这两种文件格式都用于处理文本,但它们的设计目的和结构不同。因此,将RTF转换为HTML可能会涉及一些转换难题,但这是可能的,而且有多种方法可以实现它。传统的RTF文件格式通常用于文档处理软件中,例如微软的Word。因此,转换RTF文件到HTML格式,需要考虑RTF文档中的结构,并将其转换为H
2023-05-14

如何将“\\u0301”转换为“\u0301”

php小编草莓为您介绍如何将字符串中的“\\u0301”转换为“\u0301”。在PHP中,可以使用str_replace函数来实现这个转换。具体操作是将字符串中的“\\u0301”替换为“\u0301”,代码如下:```$str =
如何将“\\u0301”转换为“\u0301”
2024-02-08

在Java中如何将double转换为int

小编给大家分享一下在Java中如何将double转换为int,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在Java编程中,您将有一个double原语值(例如82
2023-06-14

php如何将月份转换为中文

今天小编给大家分享一下php如何将月份转换为中文的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。php将月份转换为中文的方法:
2023-07-05

如何将PHP简体转换为中文?

标题:如何将PHP简体转换为中文?PHP是一种流行的服务器端脚本语言,广泛应用于网站开发和动态网页生成。在国际化的网站开发中,将PHP页面内容从简体中文翻译为中文是非常重要的。本文将介绍如何将PHP页面中的简体中文内容转换为中文,并提供具
如何将PHP简体转换为中文?
2024-02-29

如何在Go中将[]byte转换为io.Reader

目录[]byte 转 io.Readerio.Reader 转 []byte源码解析Reader 接口Writer 接口转换原理总结在 stackoverflow 上看到一个问题,题主进行了一个网络请求,接口返回的是 []byte。如果想要
2022-06-07

Oracle中如何将VARCHAR2列转换为NVARCHAR2

在Oracle中,VARCHAR2列无法直接转换为NVARCHAR2列,因为Oracle不支持直接改变列的数据类型。您需要执行以下步骤来实现将VARCHAR2列转换为NVARCHAR2列:创建一个新的NVARCHAR2列,数据类型为NVAR
Oracle中如何将VARCHAR2列转换为NVARCHAR2
2024-04-09

Java中如何实现将xml与对象进行转换

本篇文章为大家展示了Java中如何实现将xml与对象进行转换,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。xml与Java对象的转换详解1.xstream解析报文XStreamComponent x
2023-05-31

如何使用Java语言将XML转为PDF

这篇文章主要介绍了如何使用Java语言将XML转为PDF的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用Java语言将XML转为PDF文章都会有所收获,下面我们一起来看看吧。可扩展标记语言(XML)文件是
2023-06-29

python如何将array转换为list

要将一个numpy数组(array)转换为Python列表(list),可以使用tolist()函数。下面是一个示例代码:```pythonimport numpy as np# 创建一个numpy数组arr = np.array([1,
2023-08-11

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录