当开始日期大于结束日期是会在msg里出现错误信息

一个接口,要实现根据起止时间查询数据库中的书记,但是当开始时间大于结束时间是,会在msg中有错误信息该怎么实现?

img


public class ResultDataVO<T> {

    /**
     * 编码信息
     */
    private int code;
    /**
     * 响应消息
     */
    private String msg;
    /**
     * 响应内容
     */
    private T data;


    public ResultDataVO(Integer code, String msg, T data) {
        this.code = code;
        this.msg = msg;
        this.data = data;
    }

    public static <T> ResultDataVO<T> ok(String msg, T obj) {
        return new ResultDataVO<T>(200, msg, obj);
    }

    public static <T> ResultDataVO<T> fail(String msg,T obj) {
        return new ResultDataVO<T>(500, msg, null);
    }

}

修改返回的参数,

ResultDataVO<TableDataInfo> 

成功返回 ResultDataVO.ok("success",tableDataInfo) ,失败返回ResultDataVO.fail("开始时间不能大于结束时间",null)

把你的函数tabledatainfo 封装下,返回json,这样错误的时候就返回出错提示的字符串,正常的就将现有的结果json后返回

时间都不对了,就直接返失败信息呀,还返啥数据呀,你这数据也是空的呀

首先的话这个开始时间比结束日期晚这些基本判断在前端就应该进行一次。如果到后端判断,这里判断时间不合理了,就可以抛出异常或直接返回错误信息了,没必要做后续操作。
如过 TableDataInfo 字段中无法存放错误信息且不方便改造,我觉得可以考虑抛出异常,在统一异常处理那里返回错误信息。

会不会有一种操作叫 throw new XXXException()