广告
返回顶部
首页 > 资讯 > 精选 >Jaxb2中如何将avaBean转换为xml
  • 285
分享到

Jaxb2中如何将avaBean转换为xml

jaxb2javabeanxml 2023-05-31 17:05:08 285人浏览 泡泡鱼
摘要

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

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;  }}

--结束END--

本文标题: Jaxb2中如何将avaBean转换为xml

本文链接: https://www.lsjlt.com/news/227024.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • Jaxb2中如何将avaBean转换为xml
    Jaxb2中如何将avaBean转换为xml?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、简介JAXB(Java Architecture for XML Bindin...
    99+
    2023-05-31
    jaxb2 javabean xml
  • 在AngularJS中如何将XML转换为JSON
    本篇文章为大家展示了在AngularJS中如何将XML转换为 JSON,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。我们将谈谈如何在Angular  JS...
    99+
    2022-10-19
  • php中怎么怎么将数组转换为xml
    这篇文章给大家介绍php中怎么怎么将数组转换为xml,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。php将数组转为xml的方法:首先创建一个PHP示例文件;然后通过“function data_to_xml($data...
    99+
    2023-06-20
  • php如何将xml转换成数组
    这篇文章给大家分享的是有关php如何将xml转换成数组的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php将xml转换成数组的方法:首先将xml数据转成object(对象)格式的数据;然后使用json_encod...
    99+
    2023-06-08
  • SqlServer中怎么将查询结果转换为XML和JSON
    这篇文章将为大家详细讲解有关SqlServer中怎么将查询结果转换为XML和JSON,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.查询结果转XMLDEC...
    99+
    2022-10-18
  • 如何将NSInteger转换为NSTimeInterval
    要将NSInteger转换为NSTimeInterval,可以使用NSTimeInterval的构造函数将NSInteger转换为N...
    99+
    2023-09-26
    转换
  • 如何将RTF转换为HTML
    RTF是一种用于文本编辑和文件交换的文件格式。HTML是一种用于创建网页的标记语言。虽然这两种文件格式都用于处理文本,但它们的设计目的和结构不同。因此,将RTF转换为HTML可能会涉及一些转换难题,但这是可能的,而且有多种方法可以实现它。传...
    99+
    2023-05-14
  • Java中如何将double转换为int?
    Java中如何将double转换为int? 在Java编程中,我们经常需要将一个浮点数(double类型)转换为整数(int类型)。这可以通过使用强制类型转换或Math类中的方法来实现。下面将介绍两种...
    99+
    2023-10-20
    java 开发语言 Java
  • 如何在 Java 中将 String 转换为 int?
    问: 如何将 String 转换为 int? "1234" → 1234 答1: huntsbot.com – 高效赚钱,自由工作 String myString = "1234";int ...
    99+
    2023-10-24
    java 开发语言 jvm rxjava boosting
  • 在Java中如何将double转换为int
    小编给大家分享一下在Java中如何将double转换为int,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在Java编程中,您将有一个double原语值(例如82...
    99+
    2023-06-14
  • php如何将月份转换为中文
    今天小编给大家分享一下php如何将月份转换为中文的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。php将月份转换为中文的方法:...
    99+
    2023-07-05
  • 如何在MySQL中将VARCHAR转换为INT
    要将VARCHAR转换为INT,我们可以使用cast()MySQL中的函数。这是cast()函数的语法。 cast(anyValue as dataType) AS关键字用于分隔两个参数,在AS之前的是要处理的数据,在AS之后的是要转换的数...
    99+
    2023-10-23
    mysql 数据库 java
  • 如何在Go中将[]byte转换为io.Reader
    目录[]byte 转 io.Readerio.Reader 转 []byte源码解析Reader 接口Writer 接口转换原理总结在 stackoverflow 上看到一个问...
    99+
    2022-06-07
    io reader byte GO
  • JavaScript中如何将数值转换为Boolean
    JavaScript中如何将数值转换为Boolean,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。字符串conststring...
    99+
    2022-10-19
  • C#如何将Excel转换为PDF
    目录总结转换场景将Excel转换为PDF是一个很常用的功能,常见的转换场景有以下三种:转换整个Excel文档到PDF转换Excel文档的某一个工作表到PDF转换Excel文档的某一个...
    99+
    2023-01-28
    C# Excel C# Excel转换为PDF C# PDF
  • php如何将0010转换为10
    这篇文章主要介绍了php如何将0010转换为10的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php如何将0010转换为10文章都会有所收获,下面我们一起来看看吧。转换方法:1、使用substr()截...
    99+
    2023-06-30
  • python如何将array转换为list
    要将一个numpy数组(array)转换为Python列表(list),可以使用tolist()函数。下面是一个示例代码:```py...
    99+
    2023-08-11
    python
  • 如何使用Java语言将XML转为PDF
    这篇文章主要介绍了如何使用Java语言将XML转为PDF的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用Java语言将XML转为PDF文章都会有所收获,下面我们一起来看看吧。可扩展标记语言(XML)文件是...
    99+
    2023-06-29
  • Java中如何实现将xml与对象进行转换
    本篇文章为大家展示了Java中如何实现将xml与对象进行转换,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。xml与Java对象的转换详解1.xstream解析报文XStreamComponent x...
    99+
    2023-05-31
    xml java 对象
  • PHP中如何将天数转换为秒数
    这篇文章主要讲解了“PHP中如何将天数转换为秒数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP中如何将天数转换为秒数”吧!首先,我们需要了解PHP中时间戳的概念。时间戳是一个表示某个时...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作