XML字符串和JAVA对象之间的转化
1、JAXB中相关的注解、类和接口说明
JAXB 中主要的一些注解 - shenyunsese 的专栏 - CSDN 博客
注:教程很全面很详细。但是仅供参考。
主要疑问区分和说明:
1.1 @XmlElementWrapper 注解
对于数组或集合(即包含多个元素的成员变量),生成一个包装该数组或集合的 XML 元素(称为包装器。如果不加该注解,集合中的每个对象的父节点不是 List 了,而是 Class。
具体作用可以参考:JAXB 轻松转换 xml 对象和 java 对象 - 期待破茧成蝶 - CSDN 博客 中的Address,然后和 玩转 Java 对象和 XML 相互转换 - Steven - CSDN 博客 中的computers进行对比。
问题:XML子元素也可以有属性,这种属性要怎么映射?(暂时不知道)
1.2 @XmlAttribute 和 @XmlElement 的区别
基本区别很简单
- @XmlElement,将 Java 类的一个属性映射到与属性同名的一个 XML 元素。
- @XmlAttribute,将 Java 类的一个属性映射到与属性同名的一个 XML 属性(作为 Root 类对应 XML 元素上的一个属性)。
注意元素和属性。每个元素都可以有属性,这个属性对应的是哪个元素呢?见:JAXB(二)—— 核心注解介绍 - Elim 的博客 - ITeye 博客
2、Demo和工具类
可以参考教程:玩转 Java 对象和 XML 相互转换 - Steven - CSDN 博客
该教程的主要内容优点:包含详细的Demo和说明。
- XML字符串到JAVA对象
- XML文件到JAVA对象
- JAVA对象到XML字符串
- JAVA对象到XML文件
- 还有对于 List 等集合的处理。
同时,教程中有一个很好的工具类 XMLUtil.java,可以参考,很好的一个工具类
另外的工具类Demo,可以参考明哥。 @待完善
XML字符串和JAVA对象之间的转化的更多相关文章
- json、xml和java对象之间的转化
其实从面相对象的角度来理解这个问题,就会很清晰.java中的一切皆对象即把世间万物(Everything in the world)看做java对象,任何处理不了的问题都可以先转化成java对象在做处 ...
- XML字符串和 java对象项目转换
这是之前写,仅供参考(如果缺少jar包可以私信我,CSDN现在下载的东西太费了,动不动就要积分,开源精神所剩无几了,也没办法都需要吃饭,可以理解) import javax.xml.bind.JAXB ...
- json字符串和json对象之间的转化
一.json字符串转化为json对象 二.json对象转化为json字符串
- Json字符串转换为java对象的各种实现方法【json_lib框架、Gson、org.json】
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://mengzhengbin520.blog.51cto.com/7590564/12 ...
- 转载-------- JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】
转载--*--*---- 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,J ...
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换
一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换(转)
一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...
- Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换
总结一下利用Json相关jar包实现Java对象和集合与Json字符串之间的互相转换: 1.创建的User类: package com.ghj.packageofdomain; public clas ...
- java json数据转List对象的集合-----阿里巴巴插件---及原生json---JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】
List<RunfastFullLess> list=(List<RunfastFullLess>)JSONArray.parseObject(activity.getFull ...
随机推荐
- UVA 11468 Substring (记忆化搜索 + AC自动鸡)
传送门 题意: 给你K个模式串, 然后,再给你 n 个字符, 和它们出现的概率 p[ i ], 模式串肯定由给定的字符组成. 且所有字符,要么是数字,要么是大小写字母. 问你生成一个长度为L的串,不包 ...
- PHP实现系统编程(一) --- 网络Socket及IO多路复用【网摘】
一直以来,PHP很少用于socket编程,毕竟是一门脚本语言,效率会成为很大的瓶颈,但是不能说PHP就无法用于socket编程,也不能说PHP的socket编程性能就有多么的低,例如知名的一款PHP ...
- Ubuntu shell系统的环境变量
1.系统环境变量env命令查看 1)利用export命令导出环境变量 export PS1 导出PS1 添加路径 export PATH=$PATH:/home/daokr/myfile $ sudo ...
- YII框架的行为
一.什么是行为 行为,也称为 mixins,可以无须改变类继承关系即可增强一个已有的类的功能. 当一个对象或类被注入某些行为后,这个对象可以像访问自己定义的方法和属性一样访问注入进来的方法和属性. 二 ...
- Loadrunner11录制过程中报错:由于另一个程序正在运行中,此操作无法完成
第一次安装LR11录制没有问题,第二次录制也没有问题,后面第二天录制就出现了如下截图的现象 报错内容:由于另一个程序正在运行中,此操作无法完成.请选择“切换到”来激活正在运行中的的程序,并更正问题 ...
- Vue.js中 watch的理解以及深度监听
如代码: <div> <p>FullName: {{fullName}}</p> <p>FirstName: <input type=" ...
- certification on windows and
https://jingyan.baidu.com/article/335530dae0eb2319ca41c378.html
- Qt *.pro工程文件 详解
先介绍一下QT中关于项目的相关介绍 app - 建立一个应用程序的makefile.这是默认值,所以如果模板没有被指定,这个将被使用. lib - 建立一个库的makefile. vcapp - 建立 ...
- Variance Inflation Factor (VIF) 方差膨胀因子解释_附python脚本
python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...
- 产品经理 写SQL
产品经理必备技能:写SQL - 云+社区 - 腾讯云https://cloud.tencent.com/developer/news/3177 产品经理学SQL(一)一个小时上手SQL | 人人都是产 ...