第一次在这里发帖,所以请原谅任何愚蠢的方法来最好地引起你的注意/帮助我找到答案。:)
无需过多介绍我的实际程序:
我有一个用户可以注册许多设备,这些设备可以与许多遥控器相关联,这些遥控器可以有许多按钮(命令(准确地说是 LIRC 命令))。
这是我的 4 个实体的@ManyToOne和@OneToMany部分的代码。
用户
@OneToMany(mappedBy = "user")
private List<Devices> devices;
设备
@ManyToOne
@JoinColumn(name = "USER_ID")
private Users user;
@OneToMany(mappedBy = "device")
private List<Remotes> remotes;
遥控器
@ManyToOne
@JoinColumn(name = "DEVICE_ID")
private Devices device;
@OneToMany(mappedBy = "remote")
private List<Commands> commands;
命令
@ManyToOne
@JoinColumn(name = "REMOTE_ID")
private Remotes remote;
它们都工作正常,数据库条目都有适当的外键,如果我理解正确,这应该是双向的。
我的问题:
有没有办法让我的 Restful Webservice Request 响应用户的 findAll() ,不仅响应用户,还响应来自设备的所有数据,依次返回所有设备的远程和属于远程的命令。
@GET
@Override
@Produces({"application/json"})
public List<Users> findAll() {
return super.findAll();
}
如果需要,我将不得不遍历所有实体并自己修补一个 JSON,但在我开始这段旅程之前,我想知道是否有更简单的方法来解决我的问题。
干杯