首页>代码>ssm开发旅游信息管理系统,包括前台和后台>/travel-common/src/main/java/com/zzh/common/ServerResponse.java
package com.zzh.common;

import org.codehaus.jackson.annotate.JsonIgnore;
import org.codehaus.jackson.map.annotate.JsonSerialize;

import java.io.Serializable;

/**
 * Created by lenovo on 2018/6/20.
 */
@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
//保证序列化json的时候,如果是null的对象,key也会消失
public class ServerResponse <T> implements Serializable{

    private int status;
    private String msg;
    private T data;

    private  ServerResponse(int status){
        this.status=status;
    }

    private ServerResponse(int status, T data) {
        this.status = status;
        this.data = data;
    }

    private ServerResponse(int status, String msg, T data) {
        this.status = status;
        this.msg = msg;
        this.data = data;
    }

    private ServerResponse(int status,String msg){
        this.status = status;
        this.msg = msg;
    }

    @JsonIgnore
    //使之不在json序列化结果当中
    public boolean isSuccess(){
        return this.status == ResponseCode.SUCCESS.getCode();
    }

    public int getStatus(){
        return status;
    }
    public T getData(){
        return data;
    }
    public String getMsg(){
        return msg;
    }



    public static <T> ServerResponse<T> createBySuccess(){
        return new ServerResponse<T>(ResponseCode.SUCCESS.getCode());
    }

    public static <T> ServerResponse<T> createBySuccessMessage(String msg){
        return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg);
    }

    public static <T> ServerResponse<T> createBySuccess(T data){
        return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),data);
    }

    public static <T> ServerResponse<T> createBySuccess(String msg,T data){
        return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg,data);
    }


    public static <T> ServerResponse<T> createByError(){
        return new ServerResponse<T>(ResponseCode.ERROR.getCode(),ResponseCode.ERROR.getDesc());
    }


    public static <T> ServerResponse<T> createByErrorMessage(String errorMessage){
        return new ServerResponse<T>(ResponseCode.ERROR.getCode(),errorMessage);
    }

    public static <T> ServerResponse<T> createByErrorCodeMessage(int errorCode,String errorMessage){
        return new ServerResponse<T>(errorCode,errorMessage);
    }

    /*进一步封装*/
    public static <T> ServerResponse<T> createByResult(boolean result){
        if (result){
            return createBySuccess();
        }else{
            return createByError();
        }
    }

}
最近下载更多
krispeng  LV13 10月31日
233002037  LV3 10月20日
xiquyiyuan  LV10 8月28日
TY0165  LV20 6月22日
alsk222  LV4 5月10日
ruozizz  LV2 4月21日
403401  LV2 3月14日
admin_z  LV22 2月4日
zhangguobin  LV14 1月29日
小鲤鱼  LV1 1月11日
最近浏览更多
微笑刺客  LV19 前天
233002037  LV3 10月20日
半夏bx  LV14 10月1日
xiquyiyuan  LV10 8月28日
krispeng  LV13 8月26日
TY0165  LV20 6月21日
ma406805131  LV15 6月18日
贩卖焦虑 6月12日
暂无贡献等级
暂无贡献等级
暂无贡献等级
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友