首页 > 其他分享 >Restful风格响应

Restful风格响应

时间:2022-12-13 11:12:58浏览次数:39  
标签:code return String success RestResponse 响应 风格 Restful public

/**
 * <P>
 * <B>Description: RESTFUL风格的请求结果数据结构</B>
 * </P>
 * Revision Trail: (Date/Author/Description)
 * 2022/12/13 Ryan Huang CREATE
 *
 * @author Ryan Huang
 * @version 1.0
 */
@ApiModel("当前时间")
public class RestResponse<T> {

    @ApiModelProperty(value = "是否成功")
    private boolean success;

    @ApiModelProperty(value = "成功或者失败的code")
    private String code;

    @ApiModelProperty(value = "错误信息")
    private String errorMessage;

    @ApiModelProperty(value = "返回数据")
    private T data;

    @ApiModelProperty(value = "当前时间")
    private long currentTime;

    /**
     * 成功
     */
    private final static RestResponse RENDER_SUCCESS = new RestResponse(true, "0000");

    public RestResponse() {
        this.currentTime = SystemClock.now();
    }

    public RestResponse(boolean success, String code) {
        this.success = success;
        this.code = code;
        this.currentTime = SystemClock.now();
    }

    public RestResponse(boolean success, String code, String errorMessage, T data) {
        this.success = success;
        this.code = code;
        this.errorMessage = errorMessage;
        this.data = data;
        this.currentTime = SystemClock.now();
    }

    /**
     * 返回成功
     */
    public static RestResponse renderSuccess(){
        return RENDER_SUCCESS;
    }

    /**
     * 返回成功,带数据
     */
    public static <T> RestResponse<T> renderSuccess(T data){
        return new RestResponse<>(true, "0000", null, data);
    }

    /**
     * 返回失败
     */
    public static <T> RestResponse<T> renderError(ErrorEnum error){
        return new RestResponse<>(false, error.getCode(), error.getErrorMessage(), null);
    }

    /**
     * 返回失败,自定义错误信息
     */
    public static <T> RestResponse<T> renderError(String code, String errorMessage){
        return new RestResponse<>(false, code, errorMessage, null);
    }

    public boolean isSuccess() {
        return success;
    }

    public RestResponse<T> setSuccess(boolean success) {
        this.success = success;
        return this;
    }

    public String getCode() {
        return code;
    }

    public RestResponse<T> setCode(String code) {
        this.code = code;
        return this;
    }

    public String getErrorMessage() {
        return errorMessage;
    }

    public RestResponse<T> setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
        return this;
    }

    public T getData() {
        return data;
    }

    public RestResponse<T> setData(T data) {
        this.data = data;
        return this;
    }

    public Timestamp getCurrentTime() {
        return new Timestamp(currentTime);
    }

    public void setCurrentTime(long currentTime) {
        this.currentTime = currentTime;
    }
}

标签:code,return,String,success,RestResponse,响应,风格,Restful,public
From: https://www.cnblogs.com/IamHzc/p/16978034.html

相关文章

  • 请求与响应、session的使用、闪现、蓝图
    请求与响应请求对象#请求对象,是全局的,需要导入,这个全局的request,在哪个视图函数中,就是当次的request对象,不会乱1request.method提交的方法print(request.method)......
  • 温州大学《深度学习》课程课件(十、人脸识别与神经风格迁移)
    这学期我上的另一门课是本科生的《深度学习》,主要用的是吴恩达老师的《深度学习》视频课的内容。使用教材:吴恩达《深度学习》课程笔记课外参考书:《深度学习》,人民邮电出版社......
  • Vue3.0文档学习心得--响应式工具
    1.isRef:检查某个值是否为ref。返回值是true或者falseletfoo:unknown//返回值是一个类型判定 (typepredicate),这意味着 isRef 可以被用作类型守卫。if(isRe......
  • Vue3.0文档学习心得--响应式核心
    1.ref():接受一个内部值,返回一个响应式的、可更改的ref对象.此对象只有一个指向其内部值的属性 .value。使用实例:constcount=ref(0) console.log(count.value)//......
  • Vue响应式系统原理并实现一个双向绑定
    这一章就着重讲两个点:响应式系统如何收集依赖响应式系统如何更新视图我们知道通过Object.defineProperty做了数据劫持,当数据改变的时候,get方法收集依赖,进而set方法调用......
  • Vue响应式依赖收集原理分析-vue高级必备
    背景在Vue的初始化阶段,_init方法执行的时候,会执行initState(vm),它的定义在src/core/instance/state.js中。在初始化data和propsoption时我们注意initProps......
  • 响应式编程
    1.响应式编程定义响应式编程是一种异步非阻塞编程。异步编程的目的是为了寻求更高的程序执行效率,通过编写异步的非阻塞代码可以将当先执行的任务切换到另一个任务,并在异......
  • StyleMapGAN、有趣的风格迁移——评测【一】
    版权:本文由【墨理学AI】原创、各位大佬、一文读懂、敬请查阅声明:作为全网AI领域干货最多的博主之一,❤️不负光阴不负卿❤️声明:本博文按照官方readMe步骤,对测试实验过......
  • 29. 响应式布局
    一、什么是响应式布局  响应式布局就是网页可以根据不同的设备或窗口的大小呈现出不同的效果。使用响应式布局,可以使一个网页适用于所有设备。响应布局的关键就是媒体查......
  • Tomcat源码分析使用NIO接收HTTP请求(五)----响应请求
    本章的主要目标是为请求添加响应第一步:新建Http11OutputBuffer类publicclassHttp11OutputBuffer{protectedfinalByteBufferheaderBuffer;publicHttp1......