如何使用Java持久性实体使用restful Web服务

时间:2014-02-05 10:58:02

标签: java rest glassfish entities moxy

如何在onetomany双向关系中注释和使用java持久对象,以便可以将实体转换为其XML表示形式,当被宁静的客户端占用时,可以将其再次转换回实体对象

1 个答案:

答案 0 :(得分:0)

这是我的一个项目的真实代码,可能(如果我做对了)完全符合你的需要。

@Entity
@Table(name = "KIOSK")
@XmlRootElement
public class RealKiosk implements Kiosk {

  private List<Device> kioskDevices = new ArrayList<Device>();

  @OneToMany(fetch = FetchType.LAZY, targetEntity = DeviceImpl.class, mappedBy = "kiosk", cascade = CascadeType.ALL)
  @XmlElement(type = DeviceImpl.class)
  public List<Device> getKioskDevices() {   
    return kioskDevices;
  }

  public void setKioskDevices(List<Device> kioskDevices) {    
    this.kioskDevices = kioskDevices;
  }
}

在极少数情况下,您会使用

@XmlAnyElement(lax = true)

而不是

@XmlElement(type = DeviceImpl.class)

但是如果你没有使用接口而只使用类

@XmlRootElement

应该足够了。

但是如果你没有将Jackson与Spring一起使用,那么所有这些都是相关的。如果是这样,那将是一个不同的故事。