【问题标题】:Restful - Converting Hibernate entities to JSONRestful - 将 Hibernate 实体转换为 JSON
【发布时间】:2013-08-08 03:21:43
【问题描述】:

使用 Spring 和 Jackson 库执行此操作的最佳方法是什么。

例如:

Class A{
  Long id;
  String name;
  List<B> listOfB;
}

Class B{
 Long id;
 String description;
 List<C> listOfC;
}

Class C{
  Long id;
}

当我对 A 进行 GET 调用时,它应该为我提供每个 A 的 A 和 B 列表的信息。但是 B 不应该包括 C 的列表

当我对 B 进行 GET 调用时,它应该为我提供 B 的信息和每个 C 的列表 B.

我知道我可以手动迭代并创建一个 Jackson Json 节点对象,但是是否有一个框架可以帮助完成这个过程?我似乎 MVC 4 对此使用了 ViewModel 系统。在 Java 世界中,RESTful 服务通常使用什么?

【问题讨论】:

    标签: java spring rest serialization jackson


    【解决方案1】:

    一种简单的方法是将jackson-mapper-asl 依赖项包含到您的类路径中,并像这样声明您的 Spring MVC 处理程序方法:

    @RequestMapping(...)
    @ResponseBody
    public A getA(..) {
      A a = // fetch A object from persistence layer
      return a;
    }
    

    @ResponseBody注解的存在会导致对象被翻译成JSON

    【讨论】:

    • 我已经将它用于简单的对象,但是当列表中有列表并且涉及延迟加载时,它不能正常工作。我查看了 Jackson Hibernate 实用程序,但我并不喜欢它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 2016-06-18
    • 2011-01-14
    • 2021-09-11
    相关资源
    最近更新 更多