springboot 响应消息 message简单封装 单例和原型模式

Posted SamNicole1809

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot 响应消息 message简单封装 单例和原型模式相关的知识,希望对你有一定的参考价值。

直接上代码:

1、定义静态方法

import com.alibaba.fastjson.JSON;

public class MessageUtils implements Cloneable {
    private static final MessageUtils instance = new MessageUtils();  // 单例模式

    public MessageUtils clone() {
        try {
            return (MessageUtils) super.clone();
        } catch (Exception e) {
            return new MessageUtils();
        }
    }

    // 初始化方法
    public static MessageUtils newMessage() {
        return instance.clone();  // 原型模式
    }

    private String code;
    private boolean success;
    private String message;
    private Object data;

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public boolean isSuccess() {
        return success;
    }

    public void setSuccess(boolean success) {
        this.success = success;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }

    public static String error510() {
        return fullMessage("510", false, "无此权限", null);
    }

    public static String error508() {
        return fullMessage("508", false, "系统异常,请稍后再试", null);
    }

    public static String error200(String message) {
        return fullMessage("200", false, message, null);
    }

    public static String ok200() {
        return ok200(null);
    }

    public static String ok200(String message) {
        return ok200(message, null);
    }

    public static String ok200(String message, Object data) {
        return fullMessage("200", true, message, data);
    }

    public static String ok200(Object data) {
        return fullMessage("200", true, "OK", data);
    }

    // 完整方法
    public static String fullMessage(String code, boolean success, String message, Object data) {
        MessageUtils msg = instance.clone();
        msg.setCode(code);
        msg.setSuccess(success);
        msg.setMessage(message);
        msg.setData(data);
        return JSON.toJSONString(msg);
    }
}

2、使用方法:

return MessageUtils.ok200();
return MessageUtils.error200("账号不存在");
return MessageUtils.ok200(Object);
等等...

 

以上是关于springboot 响应消息 message简单封装 单例和原型模式的主要内容,如果未能解决你的问题,请参考以下文章

错误验证消息格式 Spring boot

如何让 Discord 机器人在 on_message 中使用自定义表情符号响应消息

在调用Web服务时,是否有一种简单的方法可以获取请求的soap消息和响应的soap消息?

springboot2.X集成RabbirMQ延迟消息队列报错unknown exchange type ‘x-delayed-message‘ 找不到队列

如何从 SOAP 响应 XML 创建 WCF 消息对象

SpringBoot实战之RabbitMQ