首页 > 文章列表 > Spring Boot静态方法返回数据为空,该如何解决?

Spring Boot静态方法返回数据为空,该如何解决?

382 2025-01-28

Spring Boot静态方法返回数据为空,该如何解决?

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字段,并在返回结果中正确序列化它。

来源:1732838431