使用Spring HATEOAS添加默认链接

时间:2018-12-16 20:40:02

标签: java spring-boot spring-data-rest spring-hateoas

我有许多JPA实体,每个实体都由Spring Rest Data存储库管理,并且我想在其中一个上重载POST方法,进行一次重置调用,然后完全相同。

我要避免做的是一直从头开始构建所有对象和关系,如果我没有提供自己的方法,我只是想确切地得到spring默认会给我的东西。

尝试1:

创建一个外观如下的控制器:

@RepositoryRestController
public class Entity0Controller {
    @Autowired
    Entity0DataRestRepository repo;

    @PostMapping(path="/entity0")
    public Resource<Entity0> createEntity0(Entity0 e)
    {
        e.setName("I have been changed");
        return new Resource<>(repo.save(e));
    }
}

我回来的错误是:

  

圆形视图路径[entity0]:将再次分派回当前处理程序URL [/ entity0]。检查您的ViewResolver设置! (提示:由于默认视图名称的生成,这可能是未指定视图的结果。)

尝试2:

将POST功能更改为:

@PostMapping(path="/entity0")
public @ResponseBody Entity0 createEntity0(Entity0 e)
{
    e.setName("I have been changed");
    return repo.save(e);
}

现在,我避开了圆形视图路径错误,但根本没有任何链接。

我感觉自己已经接近了,如果有人想看一下MCVE / SSCCE(总共少于20行代码),则代码在这里:https://github.com/soandos/spring-rest-override-example

0 个答案:

没有答案