好用的Message以及MessageBox工具类

package com.example.util.msg;

import lombok.Data;

@Data
public class Message {

    /**
     * 状态码 1:成功, 0:失败
     */
    public static final int STATUS_OK = 1;
    public static final int STATUS_FAIL = 0;

    public static final String MESSAGE_OK = "成功";
    public static final String MESSAGE_FAIL = "失败";

    private int status = STATUS_OK;
    private String message = MESSAGE_OK;

    public Message() {
        super();
    }

    public Message(int status, String message) {
        super();
        this.status = status;
        this.message = message;
    }

    public boolean isOk() {
        return !this.isFail();
    }

    private boolean isFail() {
        return this.status == 0;
    }

    public static Message ok(String message) {
        return new Message(STATUS_OK, message);
    }

    public static Message fail(String message) {
        return new Message(STATUS_FAIL, message);
    }

    public static Message ok() {
        return ok(MESSAGE_OK);
    }

}

 

 

package com.example.util.msg;


public class MessageBox<T> extends Message {
    private T data;

    public MessageBox() {
        super();
    }

    public MessageBox(int status, String message) {
        super(status, message);
    }

    public MessageBox(T data) {
        this.data = data;
    }

    public T getData() {
        return data;
    }

    public MessageBox setData(T data) {
        this.data = data;
        return this;
    }

    public boolean hasData() {
        return this.data != null;
    }

    public static MessageBox send(Object data, Object... params) {
        int status = STATUS_OK;
        String message = MESSAGE_OK;
        boolean getStatus = false;
        boolean getMsg = false;
        for (Object param: params) {
            if (param instanceof Integer && !getStatus) {
                status = (Integer)param;
                getStatus = true;
            } else if (param instanceof String && !getMsg) {
                message = (String)param;
                getMsg = true;
            }
            if (getStatus && getMsg) {
                break;
            }
        }

        MessageBox mb =  new MessageBox(status, message);
        return mb.setData(data);
    }

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值