spring boot 返回数据为空静态方法的问题
使用代码返回数据时,有时会遇到返回结果为空的情况。这可能是因为使用 spring boot 的静态方法导致的。
在给定的示例中:
public static <k> commonresult<k> success(k input_data) { commonresult<k> result = new commonresult<>(); result.code = code_success; result.data = input_data; result.message = ""; return result; }
虽然这是返回成功结果的快速便捷方法,但它会导致静态方法中的data字段被隐藏。这意味着当使用 spring 的 json 转换器(例如 jackson)时,不会对data字段进行序列化。因此,返回的结果中将不包含数据。
要解决这个问题,请在 commonresult 类中创建公共getdata方法:
public T getData() { return data; }
这将允许 json 转换器访问data字段,并在返回结果中正确序列化它。