首页 > 解决方案 > Java Spring 控制器响应未转换为 JSON

问题描述

我有以下方法:

@RequestMapping(value = "/products/{productId}", method = RequestMethod.GET)
@ResponseBody
public ProductDTO getProductById()...{

//return populated ProductDTO.

}

ProductDTO 具有以下结构:

public class ProductDTO implement Serializable{
String id;
Double price;
Color color;
}
-----

public class Color implements Serializable {

String name;
String RgbValue;

}

这里的问题是颜色属性没有被编组:我在响应中得到的 JSON 如下:

{
"id" : "V6 Motor"
"price" : "616$"
"color" : "com.test.src.data.Color@16b7656b"
}

为什么颜色没有被编组?

标签: javajsonspring-mvccontrollerhttpresponse

解决方案


尝试重写 Color 的 toString 方法,因为我认为 Spring 试图将其视为字符串


推荐阅读