@JsonView 对应 pojo 中的 Object result 属性,如何结合?

现在响应的结果是{}

Controller 层代码如下

    @JsonView(MyVo.MySimpleView.class)
    public ResultBody getMyDetail(@PathVariable Integer userId) {

        MyVo myVo = myPageService.getMyDetailByUserId(userId);
        return ResultBody.success(myVo);
    }

ResultBody 结构

@Data
@ApiModel("全局响应结构(ResultBody)")
public class ResultBody {

    @ApiModelProperty(value = "状态值")
    private int code;

    @ApiModelProperty(value = "描述信息")
    private String message;

    @ApiModelProperty(value = "响应结果")
    private Object result;

    public ResultBody(ResultInfoInterface errorInfo) {
        this.code = errorInfo.getCode();
        this.message = errorInfo.getMessage();
    }

    public ResultBody(Object result) {
        this.code = GlobalErrorInfoEnum.SUCCESS.getCode();
        this.message = GlobalErrorInfoEnum.SUCCESS.getMessage();
        this.result = result;
    }

    public ResultBody(ResultInfoInterface errorInfo, Object result) {
        this.code = errorInfo.getCode();
        this.message = errorInfo.getMessage();
        this.result = result;
    }
}

POJO 结构如下

@Builder
@Data
public class MyVo {


    public interface MySimpleView {
    }

    public interface MyDetailView extends MySimpleView {
    }

    /**
     * XXXXXX
     */
    private BigDecimal totalAssets;

    @JsonView(MySimpleView.class)
    public BigDecimal getTotalAssets() {

        if (totalAssets == null) {
            totalAssets = BigDecimalUtil.add(getBookBalance(), getUncollectedCapital());
        }
        return totalAssets;
    }
}
阅读 1.3k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题