12

我正在实现一个由 Ember-Data REST 适配器使用的 JSON API。

Ember-Data REST 适配器需要返回的 JSON 遵循以下格式:http:
//jsonapi.org/format/

Ember 数据文档:
http ://emberjs.com/guides/models/the-rest-adapter/#toc_json-conventions

我知道如何使用 Spring MVC 3.2 / Jackson 返回 JSON,这不是问题。但是,JSON 格式必须遵守 jsonapi.org 中指定的格式。

如果您在 Google 上搜索“ember 数据美味派适配器”(抱歉,链接 [原文如此] 的声誉点不足),您可以找到一个示例 Django 实现,并且 rable 似乎也有一个。

似乎 jsonapi.org 是多个框架/语言的一个被广泛引用的标准。

我真的需要自己在 Java 中实现这个标准吗?

任何帮助/指针将不胜感激。

非常感谢!

4

3 回答 3

0

Genson 似乎支持 JSONAPI 格式。

这是一个示例单元测试:

JsonSerDeserSymetricTest.java

演示将提要反序列化到类中。课程包括:

Feed.java - 有一个 id 字段 Link.java - 有一个 href 字段

Genson 将为JAX-RS与Spring MVC和Jersey 集成。

于 2013-12-19T04:47:15.110 回答
0

Java 有一些 JSON:API 实现:

  • Katharsis有 Spring 支持,但不知何故了多年
  • 支持 Spring Boot 2 的Crnk不仅仅是JSON:API 序列化器/反序列化器
  • JSON:基于 Spring HATEOAS 和 Jackson 的 Spring HATEOAS API,支持 Boot 2,非常轻量但新鲜

澄清一下,我没有使用任何库,但如果必须,我会尝试 Kai Toedter 的最后一个,除非我需要一个非常大的系统,只有 JSON:API,这样我才能从所有额外的魔法中受益。

于 2021-04-21T16:28:55.663 回答
-1

我认为您可以像这样更改 spring 配置文件中的 JSON 属性:

<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="messageConverters">
    <list>
        <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
            <property name="prefixJson" value="true" />
        </bean>
    </list>
</property>
</bean>

您还可以查看Spring JSON Mapping

我希望这有帮助!

于 2013-12-19T07:25:44.493 回答