我正在创建基于AJAX的Web应用程序的服务器端实现,其中客户端接收响应,这些响应是序列化为JSON的域对象。为了提供通用的外观,我想为不同类型的域对象创建模板,并将它们重新用作多个控制器的Spring视图。
例如,假设我有以下对象图:
A - B - C
其中A和C具有多对多关系。当我作为AJAX请求的结果返回A类型的对象时,我想在B和C表中返回其关联数据。但是,当我返回一个C类型的对象作为结果时,我想只返回表C中的数据。
到目前为止,我找到的唯一解决方案是在控制器中创建自定义数据绑定器;但是我相信这个用例更适合作为可以在许多控制器之间共享的视图。是否存在解决方案?
答案 0 :(得分:2)
是的,您可以拥有模型的JSON格式版本的视图。
查看Spring-Json view和org.springframework.web.servlet.view.json.JsonView
课程。
答案 1 :(得分:1)
XStream对任意Java对象都有JSON serializer and deserializer。