默认情况下,当我点击暴露的存储库时,我得到的JSON看起来像这样:
{
_links: {},
_embedded: {}, //actual content
page: {} //paging enabled
}
有没有办法摆脱默认情况下在单词链接&的开头生成的下划线字符。嵌入式? _embedded中有_links的嵌套外观,所以我猜它们都在同一个地方配置。
我需要有类似的东西
{
links: {},
embedded: {},
page: {}
}
我正在使用默认配置
@Import(RepositoryRestMvcConfiguration.class)
提前致谢。
答案 0 :(得分:2)
由于这是HAL代表它的方式(参见Ali的评论中的链接),“可能没有”(我声称不知道超过1%的Spring Data Rest的功能)......是的,因为有配置属性defaultMediaType
,您可以通过application/json
设置为spring.data.rest.defaultMediaType=application/json
,因此您的Spring Data Rest将生成而不是application/hal+json
这不会完全符合您的要求,但也会更改其他一些内容,但可能足够接近。但是当然,如果摆脱一些下划线,你应该认为非常好,完全可以摆脱hal + json。
也许更好的问题是,“为什么”你想要摆脱下划线,但这可能更多的是讨论而不是问题。
答案 1 :(得分:1)
你不应该这样做,现在你处于休息等级3(HAL / HATEOAS),这是一件好事。如果您知道如何使用它,这有很多好处。 http://martinfowler.com/articles/richardsonMaturityModel.html#level3
您可以通过从spring-hateoas
中排除spring-data-rest-core
来升级到第2级,但我不会推荐它。
HAL的正式规范:https://tools.ietf.org/html/draft-kelly-json-hal-07