如何在SpringMVC中为特定类自定义JSON
问题内容:
我正在使用SpringMVC并具有以下方法。
@RequestMapping("/login")
public @ResponseBody User login(User user) {
// some operation here ....
return user;
}
在大多数情况下,SpringMVC以适当的方式将对象转换为JSON。但是有时您可能需要自定义JSON。在哪里可以为所有User对象自定义JSON。我希望将User对象转换为JSON的行为在所有方面都保持一致。我想一个监听器或接口可以实现。是否存在这种解决方案?
PS。如果我要转换的对象是第三方类的实例怎么办?我无法在类定义中自定义它,因为我没有源代码…
问题答案:
Spring默认使用Jackson来序列化和反序列化JSON。您可以@JsonSerialize
在User
类型上使用Jackson的批注,并提供一个JsonSerializer
实现所需序列化的实现。