如何爱春天仇恨解决简单的要求

时间:2017-04-06 00:02:27

标签: spring-boot spring-data-jpa hateoas

好的,我正在努力去爱HATEOAS。 Spring Boot及其REST存储库非常棒。我想要的一切。我只有两个不常见的要求。那我该怎么做呢?

鉴于我有以下两个实体:

@Entity()
public class GameConsole{
    @Id
    private String name;
}
@Entity()
public Class Game{
    @Id
    private String name;
    @ManyToOne
    private GameConsole gameConsole;
}

假设我有REST存储库公开这两个实体。

1 - 如何使用一个请求生成包含游戏名称和控制台名称的表格列表:

来自GET的请求 - /游戏 使用任何框架,jQuery,angular,并不重要,只需填充以下内容:

|  Game console  | Game      |
|  PS4           | Uncharted |
|  XBOX          | HALO      |

问题在于,当我查询/游戏时,我得到一个带有/ games / halo / gameConsole链接的游戏列表,而不是gameConsole的实际ID。 那么这是否意味着我必须循环并查询每个项目以获得游戏控制台名称?

2 - 下拉菜单

假设我有一个网页来编辑我的游戏。我想添加一个下拉菜单并放置更新的游戏控制台。 为了填充我的下拉列表,我查询/ gameConsoles并获得一个控制台列表。 我的问题在于,我从游戏中得到的ID是链接到/ game / halo / gameConsole,它不能与/ gameConsoles返回的任何项目匹配。

我该如何解决?

如果答案很简单,真的很感谢耐心的人。

1 个答案:

答案 0 :(得分:0)

在Spring Data Rest的上下文中,您可以使用投影 - see here.

使用投影,您可以嵌入引用的对象,而不是获取资源的链接。