Spring MVC:奇怪的@ResponseBody行为

时间:2011-04-19 21:22:28

标签: java ajax json spring-mvc

您好 我有层次结构B extends AA拥有财产valueA,B拥有财产valueB。 Spring MVC示例方法

public @ResponseBody A justTesting() {
return new B();
}

JSON答案为{"valueB":"valueB","valueA":"valueA"},但我期待{"valueA":"valueA"},因为我的界面返回A
如何修复返回值?

1 个答案:

答案 0 :(得分:1)

你的定义在这里并不重要。返回的对象是序列化的。

您可以执行以下任一操作:

  • 使用BeanUtils.copyProperties(..)将属性从B实例复制到新的A实例,专门创建以便返回。
  • return new A()
  • valueB中将B标记为@JsonIgnore