我正在上A班和B班 B类扩展了A类
就像这样
@XmlAccessorType(XmlAccessType.NONE)
@XmlRootElement(name="root")
@Inheritance(strategy=InheritanceType.JOINED)
@XmlSeeAlso(value={B.class})
class A implements Serializable{
@Column(name="name")
@XmlAttribute(name="name")
private String name;
//more fields and getters and setters...
}
@XmlAccessorType(XmlAccessType.NONE)
@XmlRootElement(name="root")
class B extends A{
@XmlElement(name="type")
private String type;
// Fields and getter setters...
}
当我在REST POST方法中传递B类对象时,我无法获取B的实例,而是只获取类A的实例。如何获取B实例,是否还有其他配置要执行此操作?
由于我有更多像B这样的类都扩展了A类,我需要在DB中保存各自的实体。请帮帮我。
修改
我的意见是:
<root name="Duster">
<type>SUV<type>
</root>
答案 0 :(得分:0)
用
@DiscriminatorColumn
(
name="Discriminator",
discriminatorType=DiscriminatorType.STRING
)
@DiscriminatorValue(value="B")
注释我们可以做到。