关于jaxb注解XmlElementWrappered的疑问求大神指点

w410919244 2014-12-02 04:08:49
使用的jar包:jaxb-api-2.2.3.jar

以下是注解源码:
package javax.xml.bind.annotation;

import java.lang.annotation.Annotation;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target({java.lang.annotation.ElementType.FIELD, java.lang.annotation.ElementType.METHOD})
public @interface XmlElementWrapper
{
String name() default "##default";

String namespace() default "##default";

boolean nillable() default false;

boolean required() default false;
}

jdk1.6文档api中有说到: 该属性必须是一个集合属性
使用

@XmlElementWrapper 注释可以与以下程序元素一起使用:

JavaBean 属性
非 static、非 transient 字段
用法受到以下约束的限制:

该属性必须是一个集合属性
此注释可与以下注释一起使用:XmlElement、XmlElements、XmlElementRef、XmlElementRefs、XmlJavaTypeAdapter。


可是我源码看来看去没哪个地方说明必须要是一个集合属性啊!


我真真遇到的问题:
我想让一个对象是用这个标签 再转换xml的时候在外层包裹一个标签 ,我只找到了这个注解是可以包裹的,但是这个属性必须是一个集合,虽然属性可以定义成一个list 但是这样比较麻烦,我想扩展下他的这个注解!有人知道怎么做吗?
或者提供一个更好的办法
...全文
419 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
w410919244 2014-12-30
  • 打赏
  • 举报
回复
引用 2 楼 tianfang 的回复:
jdk1.6文档api中有说到: 该属性必须是一个集合属性 jdk8中怎么说,jdk6已经不推荐使用
当然不推荐了 新的怎么可能还推荐老的。。。。。
tianfang 2014-12-02
  • 打赏
  • 举报
回复
jdk1.6文档api中有说到: 该属性必须是一个集合属性 jdk8中怎么说,jdk6已经不推荐使用
w410919244 2014-12-02
  • 打赏
  • 举报
回复
求解答 在线等啊 急急急
jackson所需要的所有jar jackson-all-1.6.2.jar jackson-core-asl-1.6.2.jar jackson-mapper-asl-1.6.2.jar jakarta-oro.jar 1. 背景 目前维护的产品使用jackson处理json,现整理一下jackson相关资料,希望对初次接触jackson的新手有所帮助。 jackson主页: http://jackson.codehaus.org/ jackson document: http://wiki.fasterxml.com/JacksonJavaDocs JacksonInFiveMinutes: http://wiki.fasterxml.com/JacksonInFiveMinutes 本文主要内容译自JacksonInFiveMinutes,增加了部分示例,转载请注明出处。 受java平台上各种处理xml的类库(StAX, JAXB等)启发,Jackson提供一种处理json的java类库。Jackson的目标是为开发者提供快速、准确、轻量级和用起来最爽的json处理类库。本文将概括介绍Jackson的主要功能和相关功能的使用示例。 2. 使用方式 Jackson提供三种可选的json处理方式: 1) Streaming API 又称Incremental parsing/generation, 受StAX API启发,以非关联递增方式读写json内容。 通过 org.codehaus.jackson.JsonParser读取,通过org.codehaus.jackson.JsonGenerator写入。 2) Tree Model 通过基于内存的树形结构来描述json数据,和 XML DOM类似。通过org.codehaus.jackson.map.ObjectMapper构建树,树由JsonNode节点组成。 3) Data Binding 基于属性访问或注解的方式将json和POJO对象互相转换, 受JAXB基于注解的处理方式启发。通过org.codehaus.jackson.map.ObjectMapper读写json数据。它包含两种类型: 3.1 Simple Data Binding 用于json和Java Maps, Lists, Strings, Numbers, Booleans and nulls的相互转换。 3.2 Full Data Binding 用于json和Java Bean的相互转换。 下面从使用的角度上比较三种处理方式: Streaming API 执行效率最高,读写速度最快,另外两种方式都基于它实现; Tree Model 是最灵活的; Data Binding 通常是最方便使用的;

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧