- 浏览: 89852 次
- 性别:
文章分类
- 全部博客 (151)
- Spring-MVC学习 (5)
- 偶然间发现 (2)
- easyUi学习 (7)
- web项目相关技术 (4)
- java学习 (26)
- webService (4)
- 一些工具的安装使用 (7)
- js学习 (20)
- Sping学习 (7)
- mybatis学习 (5)
- 定时器 (4)
- oracle (2)
- JSP学习 (6)
- HTML一些标签 (1)
- web服务 (2)
- 偶尔得到的地址 (2)
- 常用的代码记录 (2)
- 设计模式 (1)
- java常使用的开源API (1)
- maven (1)
- Socket (1)
- nginx (2)
- jquery (3)
- poi (2)
- 写过的工具类 (19)
- 微信开发 (2)
- mysql (1)
- freemarker (2)
- ftp (1)
- 用过的软件 (1)
- jconsole (1)
- log4j (1)
- redis的简单入门使用 java调用redis (0)
- redis的使用 (2)
- 生活相关的 (1)
最新评论
-
chokee:
...
easyUi学习之开启行编辑模式增删改操作 -
lijie_insist:
就是有的界面需要显示天气啊!所以你要调用天气的接口啊 因为很多 ...
免费的天气接口的一个demo -
zhglance:
请问这是干什么用的呢?
免费的天气接口的一个demo
jaxb的annotation的理解
一.Jaxb处理java对象和xml之间转换常用的annotation有:
@XmlType
@XmlElement
@XmlRootElement
@XmlAttribute
@XmlAccessorType
@XmlAccessorOrder
@XmlTransient
@XmlJavaTypeAdapter
@XmlType用在class类的注解,常与@xmlRootElement和@XmlAccessorType一起使用.它有三个属性:name,namespace,propOrder,经常使用的前两个属性, 如:
@XmlType(name = "basicStruct",propOrder={"intValue","stringArray","stringValue"})
在使用propOrder的属性时,必须列出JavaBean对象中的所有属性,否则会报错。
@XmlElement用在java对象的属性映射成为xml的节点,在使用xmlElement时可通过name属性改变java属性在xml中显示的名字,例:
@XmlRootElement用于类级别的注解,常与xmlType和xmlAccesorType一起使用,例:
@XmlAttribute 用于把java对象的属性映射为xml的属性,并可通过name属性为生成的xml属性指定别名。如:
@XmlAccesorType 用于指定由java对象生成xml文件时对java对象属性访问的方式,常与xmlType和xmlAccessType连用,他的属性值是XmlAccessorType的四个枚举值:
XmlAccessType.FIELD:java对象中的所有成员变量
XmlAccessType.PROPERTY:java对象中所有通过getter/setter方式访问的成员变量
XmlAccessType.PUBLIC_MEMBER:java对象中所有的public访问权限的成员变量和通过getter/setter方式访问的成员变量
XmlAccessType.NONE:java对象的所有属性都不映射为xml的元素
注意:@XmlAccessorType的默认访问级别是XmlAccessType.PUBLIC_MEMBER,因此,如果java对象中的private成员变量设置了public权限的getter/setter方法,就不要在 private变量上使用@XmlElement和@XmlAttribute注解,否则在由java对象生成xml时会报同一个属性在java类里存在两次的错误。同理,如果@XmlAccessorType的访问权限为XmlAccessType.NONE,如果在java的成员变量上使用了@XmlElement或@XmlAttribute注解,这些成员变量依然可以映射到xml文件。
@XmlAccessorOrder用于对java生成的xml文件进行排序,它有两个属性值:
AccessorOrder.ALPHABETICAL:对生成的xml元素按字母书序排序
XmlAccessOrder.UNDEFINED:不排序
@XmlTransient 用于表示再由java生成xml文件时候忽略此属性,xml文件中不出现此元素
@XmlJavaTypeAdapter 让用于转换比较复杂的类型时,如map类型和时间属性的格式化,使用此注解时需要自己写一个Adapter类来继承XmlAdapter抽象类,并实现其中的方法 例:
public abstract class XmlAdapter<ValueType,BoundType> {
@XmlElementWrapper注解表示生成一个包装 XML 表示形式的包装器元素。 此元素主要用于生成一个包装集合的包装器 XML 元素。因此,仅允许出现在集合属性上。例如(set,string[],list等)与xmlElement联用.,例:
以上就是jaxb的常用注解! 也是我在一篇文章中看到的 就参考下来了
一.Jaxb处理java对象和xml之间转换常用的annotation有:
@XmlType
@XmlElement
@XmlRootElement
@XmlAttribute
@XmlAccessorType
@XmlAccessorOrder
@XmlTransient
@XmlJavaTypeAdapter
@XmlType用在class类的注解,常与@xmlRootElement和@XmlAccessorType一起使用.它有三个属性:name,namespace,propOrder,经常使用的前两个属性, 如:
@XmlType(name = "basicStruct",propOrder={"intValue","stringArray","stringValue"})
在使用propOrder的属性时,必须列出JavaBean对象中的所有属性,否则会报错。
@XmlElement用在java对象的属性映射成为xml的节点,在使用xmlElement时可通过name属性改变java属性在xml中显示的名字,例:
@XmlElement(name="address") private String yourAddress;
@XmlRootElement用于类级别的注解,常与xmlType和xmlAccesorType一起使用,例:
@XmlType @XmlAccessorType(XmlAccessType.FIELD) @XmlRootElement public class Address {}
@XmlAttribute 用于把java对象的属性映射为xml的属性,并可通过name属性为生成的xml属性指定别名。如:
@XmlAttribute(name="Country")
@XmlAccesorType 用于指定由java对象生成xml文件时对java对象属性访问的方式,常与xmlType和xmlAccessType连用,他的属性值是XmlAccessorType的四个枚举值:
XmlAccessType.FIELD:java对象中的所有成员变量
XmlAccessType.PROPERTY:java对象中所有通过getter/setter方式访问的成员变量
XmlAccessType.PUBLIC_MEMBER:java对象中所有的public访问权限的成员变量和通过getter/setter方式访问的成员变量
XmlAccessType.NONE:java对象的所有属性都不映射为xml的元素
注意:@XmlAccessorType的默认访问级别是XmlAccessType.PUBLIC_MEMBER,因此,如果java对象中的private成员变量设置了public权限的getter/setter方法,就不要在 private变量上使用@XmlElement和@XmlAttribute注解,否则在由java对象生成xml时会报同一个属性在java类里存在两次的错误。同理,如果@XmlAccessorType的访问权限为XmlAccessType.NONE,如果在java的成员变量上使用了@XmlElement或@XmlAttribute注解,这些成员变量依然可以映射到xml文件。
@XmlAccessorOrder用于对java生成的xml文件进行排序,它有两个属性值:
AccessorOrder.ALPHABETICAL:对生成的xml元素按字母书序排序
XmlAccessOrder.UNDEFINED:不排序
@XmlTransient 用于表示再由java生成xml文件时候忽略此属性,xml文件中不出现此元素
@XmlJavaTypeAdapter 让用于转换比较复杂的类型时,如map类型和时间属性的格式化,使用此注解时需要自己写一个Adapter类来继承XmlAdapter抽象类,并实现其中的方法 例:
public abstract class XmlAdapter<ValueType,BoundType> {
// Do-nothing constructor for the derived classes. protected XmlAdapter() {} // Convert a value type to a bound type. public abstract BoundType unmarshal(ValueType v); // Convert a bound type to a value type. public abstract ValueType marshal(BoundType v); }
@XmlElementWrapper注解表示生成一个包装 XML 表示形式的包装器元素。 此元素主要用于生成一个包装集合的包装器 XML 元素。因此,仅允许出现在集合属性上。例如(set,string[],list等)与xmlElement联用.,例:
@XmlElementWrapper(name="books") @XmlElement(name="book") public Set<Book> getBook() { return book; } public void setBook(Set<Book> book) { this.book = book; }
以上就是jaxb的常用注解! 也是我在一篇文章中看到的 就参考下来了
发表评论
-
ajax的分页分页请求,通过ajax来分页
2015-12-01 14:55 402这里面通过自定义标签实现的,因为项目没有采用jsp模板而是用的 ... -
java学习之JAXB解析xml
2015-08-17 09:07 860时间仓促,只记录代码 //实体类 package com.w ... -
生成验证码的方法
2015-07-17 08:43 2忘了在哪里参考过代码,后来自己参照了写了这一段code pac ... -
javax.mail邮件发送返回状态吗
2015-07-02 17:35 1525项目需要集成邮件发送,之前在.net下写过smtp的邮 ... -
javax.mail邮件发送
2015-06-30 12:50 0package com.demo.common; impor ... -
java的(PO,VO,TO,BO,DAO,POJO)解释
2015-06-04 11:31 384原地址:http://www.cnblogs. ... -
JDBC学习
2015-04-21 10:02 256原文来自:http://blog.csdn.net/fight ... -
j2ee web项目的基本结构
2015-03-20 14:50 485原地址:http://www.cnblogs.co ... -
HTTP 返回的状态码的含义
2015-03-20 14:38 385在网上看到的,总结的蛮 ... -
java学习之try catch finally中的return语句执行
2015-03-10 14:21 482http://blog.csdn.net/kavensu/ar ... -
java反射机制的学习
2015-03-06 13:39 305http://blog.csdn.net/zzjjiandan ... -
java学习之时间类的使用
2015-03-06 10:26 409有时候要对时间进行各方面的操作,这里就记录下最近使用到的对时间 ... -
为什么接口的属性用public static final修饰
2015-03-05 09:14 517每次只是看了看.好多都没去实践和去想! 自己写了个接口才会想到 ... -
正则表达式的学习
2015-03-04 11:10 306http://help.locoy.com/Document/ ... -
面向对象的特征
2015-03-02 17:56 328今天看到一篇文章对面 ... -
Class.forName("className"),class.getClass,class.class区别
2015-02-27 17:43 333今天看java.lang.reflect包中的信息时,想到了这 ... -
java调用webservice(asmx)的例子
2015-02-04 16:54 382转自:http://www.blogjava.net/jerr ... -
java学习之流的学习
2015-01-21 14:12 321因为经常用到流,并且发现java中的数据流的确很多种类,而自己 ... -
java学习之图片上传,下载显示demo
2015-01-19 10:43 2498每次都是用的框架来弄 ... -
java学习之String的一些处理函数
2014-12-12 17:17 504前两天开发一个关于解析数据的一个小功能,发现需要大肆的用到St ...
相关推荐
NULL 博文链接:https://lijie-insist.iteye.com/blog/2160015
Jaxb简单例子,学习注解及java与xml的互相转换,比较基础,大家互相学习
jaxb基础知识学习,初级的java学习者,可以参考这个文档学习
JAXB学习笔记 项目为了进行xml与java bean的互转,参考了各位网友的推荐,最后选型为JAXB,闲暇之余整理了一下笔记。废话不多说,上代码
全面讲解了SAX、DOM、StAX、JDOM以及dom4j的应用程序编程接口,同时还囊括了最新版本的用于XML处理的Java应用程序编程接口(JAXP)和用于XML绑定的Java架构(JAXB)的相关知识。第三版还彻底重写了有关网络技术的...
全面讲解了SAX、DOM、StAX、JDOM以及dom4j的应用程序编程接口,同时还囊括了最新版本的用于XML处理的Java应用程序编程接口(JAXP)和用于XML绑定的Java架构(JAXB)相关知识。第三版还彻底重写了有关网络技术的章节,...
4.6 Java EE中的JAXB 55 4.7 小结 64 第5章 使用Java Servlet开发动态网页 65 5.1 Servlet的概念和生命周期 65 5.2 如何编写Servlet 67 5.3 使用Eclipse和Tomcat开发Servlet实例——输出字符串响应 72 ...
主要给大家介绍了关于JAXB命名空间及前缀的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
Java SE实践教程 pdf格式电子书 下载(二) 更新 http://download.csdn.net/source/2824040 Java SE实践教程 pdf格式电子书 下载(三) 更新 http://download.csdn.net/source/2824042 Java SE实践教程 pdf格式...
本书内容非常全面,涵盖了多册J2EE书籍所有知识要点,并结合作者自己经验总结而编写,内容相当丰富 众所周知,一般书籍为了........JAXB .....Mail(邮件) .....Security(加密解密) .....mime类型 .....乱码解决方案
本书从编程技术、项目实践以及软件工程的角度出发,如果大家想学习基础语法部分,建立去下载别的书籍。当然这本书也讲解了语法,是从实战的角度讲解的。 目录回到顶部↑第1章 进驻爪哇岛——JAVA的基本语法. 1 1.1 ...
Java SE实践教程 pdf格式电子书 下载(二) 更新 http://download.csdn.net/source/2824040 Java SE实践教程 pdf格式电子书 下载(三) 更新 http://download.csdn.net/source/2824042 Java SE实践教程 pdf格式...
XML Schema 教程 XML Schema 是基于 XML 的 DTD 替代者。...在此教程中,你将学习如何在应用程序中读取和创建 XML Schema 语言,XML Schema 为何比 DTD 更加强 大,以及如何在您的应用程序中使用 XML Schema。
受java平台上各种处理xml的类库(StAX, JAXB等)启发,Jackson提供一种处理json的java类库。Jackson的目标是为开发者提供快速、准确、轻量级和用起来最爽的json处理类库。本文将概括介绍Jackson的主要功能和相关功能...
JAXB 2.2 - JSR 222 -项目-邮件列表 Web 服务 1.4 - JSR 109 Web 服务元数据 2.1 - JSR 181 JAX-RS 2.0 - JSR 339 -项目-邮件列表- Jersey - @gf_jersey - GitHub 上的代码 JSON-P 1.0 - JSR 353 -项目-邮件列表- ...
现在很多比较大一点的公司基本上都会有代码自动生成,节省了几乎80%的代码量,而freemark就可以完成这一功能,生成html、java、xml、doc等文件,所以对于新手而言(像俺...(此项技术并无学习成本,俺再研究下jaxb去)。
ToSpeak是一款旨在帮助用户学习某些外语的基本单词和短语的应用程序。 活动包括抽认卡,测验,字母练习和子手。 用Java和XML和JAXB编写。
5分钟内闻到 这是一个易于使用的教程,可使用SNOMED International术语服务器在5分钟内访问SNOMED API。 目录 项目结构 顶级:子模块的聚合器...模型:支持JAXB的类,用于表示RF2域模型 php-examples:带有php的