3

我正在创建基于 AJAX 的 Web 应用程序的服务器端实现,其中客户端接收响应,这些响应是序列化为 JSON 的域对象。为了提供通用的外观和感觉,我想为不同类型的域对象创建模板,并将这些模板重新用作多个控制器的 Spring 视图。

例如,假设我有以下对象图:

A - B - C

其中 A 和 C 具有多对多关系。当我作为 AJAX 请求的结果返回 A 类型的对象时,我想在 B 和 C 表中返回其关联数据。但是,当我返回 C 类型的对象作为结果时,我只想返回表 C 中的数据。

到目前为止,我发现的唯一解决方案是在控制器中创建一个自定义数据绑定器;但是我相信这个用例更适合作为可以在许多控制器之间共享的视图。是否存在解决方案?

4

2 回答 2

2

是的,您可以拥有模型的 JSON 格式版本的视图。

看看Spring-Json 视图org.springframework.web.servlet.view.json.JsonView类。

于 2009-05-18T17:23:59.657 回答
1

XStream具有用于任意 Java 对象的JSON 序列化器和反序列化器。

于 2009-05-19T04:45:29.137 回答