首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JAXB的第一步-抽象类和子类型

JAXB的第一步-抽象类和子类型
EN

Stack Overflow用户
提问于 2014-06-25 09:33:22
回答 2查看 848关注 0票数 2

这是我和jaxb的第一步。//,所以我已经使用了XmlSeeAlso。**

我有一个小班制的节假日。有些应该是东部的,有些是固定的(比如新年,等等)。

所以我创建了上面的类。

总之,我有一个holidayDB课程,它将举行一个固定的假期;应该能够马歇尔和取消它。

在我看来,编组工作正常(简称):

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<holidayDB xmlns:ns2="core.calendar.holiday" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="">
    <holiday xsi:type="fix" day="1" month="FEBRUARY" name="NEW_YEAR"/>
    <holiday xsi:type="var" daysAfterEaster="49" name="PENTECOAST_SUNDAY"/>
</holidayDB>

这是FixedHoliday和VariableHoliday的一个子类,它应该从xml文件反向生成。

但问题是。Jaxb试图实例FixedHoliday oder VariableHoliday,这是不可能的,因为这是抽象类。

有人对jaxb菜鸟有一点小提示吗?!

提前谢谢。应要求编写Java代码:)

微孔

//编辑:

这是我的假期课:

代码语言:javascript
复制
@XmlSeeAlso({ FixedHoliday.class, VariableHoliday.class })
public abstract class Holiday {

........

}

下面是一个扩展版本的als摘要

代码语言:javascript
复制
@XmlType(name = "var")
@XmlRootElement
public abstract class VariableHoliday extends Holiday {

...
@XmlAttribute(name = "daysAfterEaster")
abstract int getDaysAfterEaster();


}

到目前为止,还没有一种非抽象的实现。应该从xml生成非抽象类。

EN

回答 2

Stack Overflow用户

发布于 2014-06-25 09:38:24

如果我没记错的话,您必须使用@XmlSeeAlso注释来指示类的具体实现。例如,这在我以前的List中起了作用。

我刚刚做了一个小搜索,这里是一个相关的问题。

票数 1
EN

Stack Overflow用户

发布于 2014-06-25 09:38:28

@XmlSeeAlso注释抽象类。示例:

代码语言:javascript
复制
@XmlSeeAlso({Dog.class,Cat.class})
class Animal {}
class Dog extends Animal {}
class Cat extends Animal {}

更多信息这里

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24405059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档