`
kanpiaoxue
  • 浏览: 1781546 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

常用java类

 
阅读更多

 

 

import com.google.gson.GsonBuilder;

/**
 * @ClassName: Result
 * @author kanpiaoxue
 * @version 1.0
 * @CreateTime: 2019/06/12 10:22:06
 * @Description: 结果通用类
 */
public class Result<T> {
    public static final int SUCCESS_STATUS = 0;

    public static final int ERROR_STATUS = 1;

    private int status;

    private T data;

    private Integer errorCode;

    private String errorMessage;

    /**
     *
     */
    public Result() {
        super();
    }

    /**
     * @param status
     */
    public Result(int status) {
        super();
        this.status = status;
    }

    /**
     * @param status
     * @param errorCode
     * @param errorMessage
     */
    public Result(int status, Integer errorCode, String errorMessage) {
        super();
        this.status = status;
        this.errorCode = errorCode;
        this.errorMessage = errorMessage;
    }

    /**
     * @param status
     * @param errorMessage
     */
    public Result(int status, String errorMessage) {
        super();
        this.status = status;
        this.errorMessage = errorMessage;
    }

    /**
     * @param status
     * @param data
     */
    public Result(int status, T data) {
        super();
        this.status = status;
        this.data = data;
    }

    /**
     * @param status
     * @param data
     * @param errorCode
     * @param errorMessage
     */
    public Result(int status, T data, Integer errorCode, String errorMessage) {
        super();
        this.status = status;
        this.data = data;
        this.errorCode = errorCode;
        this.errorMessage = errorMessage;
    }

    public static <T> Result<T> error(Integer errorCode, String errorMessage) {
        return new Result<T>(ERROR_STATUS, null, errorCode, errorMessage);
    }

    public static <T> Result<T> error(Integer errorCode, String errorMessage, T data) {
        return new Result<T>(ERROR_STATUS, data, errorCode, errorMessage);
    }

    public static <T> Result<T> error(String errorMessage) {
        return new Result<T>(ERROR_STATUS, errorMessage);
    }

    public static <T> Result<T> error(String format, Object... args) {
        String errorMessage = String.format(format, args);
        return new Result<T>(ERROR_STATUS, null, errorMessage);
    }

    public static <T> Result<T> error(T data) {
        return new Result<T>(ERROR_STATUS, data);
    }

    public static <T> Result<T> success() {
        return new Result<T>(SUCCESS_STATUS);
    }

    /**
     *
     * @param <T>
     * @param data
     * @return
     * @author kanpiaoxue
     * @CreateTime: 2019/06/12 10:28:06
     * @Description: 成功状态
     */
    public static <T> Result<T> success(T data) {
        return new Result<T>(SUCCESS_STATUS, data);
    }

    /*
     * (non-Javadoc)
     * @see java.lang.Object#equals(java.lang.Object)
     */
    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        Result<?> other = (Result<?>) obj;
        if (data == null) {
            if (other.data != null) {
                return false;
            }
        } else if (!data.equals(other.data)) {
            return false;
        }
        if (errorCode == null) {
            if (other.errorCode != null) {
                return false;
            }
        } else if (!errorCode.equals(other.errorCode)) {
            return false;
        }
        if (errorMessage == null) {
            if (other.errorMessage != null) {
                return false;
            }
        } else if (!errorMessage.equals(other.errorMessage)) {
            return false;
        }
        if (status != other.status) {
            return false;
        }
        return true;
    }

    /**
     * @return the data
     */
    public T getData() {
        return data;
    }

    /**
     * @return the errorCode
     */
    public Integer getErrorCode() {
        return errorCode;
    }

    /**
     * @return the errorMessage
     */
    public String getErrorMessage() {
        return errorMessage;
    }

    /**
     * @return the status
     */
    public int getStatus() {
        return status;
    }

    /*
     * (non-Javadoc)
     * @see java.lang.Object#hashCode()
     */
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((data == null) ? 0 : data.hashCode());
        result = prime * result + ((errorCode == null) ? 0 : errorCode.hashCode());
        result = prime * result + ((errorMessage == null) ? 0 : errorMessage.hashCode());
        result = prime * result + status;
        return result;
    }

    /**
     * @param data
     *            the data to set
     */
    public void setData(T data) {
        this.data = data;
    }

    /**
     * @param errorCode
     *            the errorCode to set
     */
    public void setErrorCode(Integer errorCode) {
        this.errorCode = errorCode;
    }

    /**
     * @param errorMessage
     *            the errorMessage to set
     */
    public void setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
    }

    /**
     * @param status
     *            the status to set
     */
    public void setStatus(int status) {
        this.status = status;
    }

    /*
     * (non-Javadoc)
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString() {
        return new GsonBuilder().create().toJson(this);
    }

}

 

import com.google.gson.GsonBuilder;

/**
 * @ClassName: KeyValue
 * @author kanpiaoxue
 * @version 1.0
 * @CreateTime: 2019/06/12 10:22:23
 * @Description: KeyValue
 */
public class KeyValue<K, V> {
    private final K key;
    private final V value;

    /**
     * @param key
     * @param value
     */
    public KeyValue(K key, V value) {
        super();
        this.key = key;
        this.value = value;
    }

    /*
     * (non-Javadoc)
     * @see java.lang.Object#equals(java.lang.Object)
     */
    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        KeyValue<?, ?> other = (KeyValue<?, ?>) obj;
        if (key == null) {
            if (other.key != null) {
                return false;
            }
        } else if (!key.equals(other.key)) {
            return false;
        }
        if (value == null) {
            if (other.value != null) {
                return false;
            }
        } else if (!value.equals(other.value)) {
            return false;
        }
        return true;
    }

    /**
     * @return the key
     */
    public K getKey() {
        return key;
    }

    /**
     * @return the value
     */
    public V getValue() {
        return value;
    }

    /*
     * (non-Javadoc)
     * @see java.lang.Object#hashCode()
     */
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((key == null) ? 0 : key.hashCode());
        result = prime * result + ((value == null) ? 0 : value.hashCode());
        return result;
    }

    /*
     * (non-Javadoc)
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString() {
        return new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create().toJson(this);
    }

}

  

 

 

 

 

 

分享到:
评论

相关推荐

    人脸识别依赖的常用java类以及依赖jar包.rar

    在给定的压缩包文件“人脸识别依赖的常用java类以及依赖jar包.rar”中,包含了四个关键的Java类以及一个Gson库的jar包。这些资源是实现人脸识别功能的基础组件,下面将详细介绍这些类和库的作用。 1. **Base64Util....

    JAVA常用类总结

    JAVA常用类,java封装类,String类和StringBuffer类......

    java常用系统类库实验

    ### Java常用系统类库实验详解 #### 实验概述与目标 本次实验主要聚焦于Java的预定义类,尤其是那些在日常编程中频繁使用的系统类库。实验旨在加深学生对Java预定义类的理解,掌握常用类的运用技巧,以及熟练方法...

    实验5 JAVA常用类.doc

    实验5的Java常用类主要涵盖了Java编程中的一些核心概念和常用工具类的使用。以下是这些知识点的详细说明: 1. **String、StringBuffer(StringBuilder)**: - **String** 类在Java中是不可变的,这意味着一旦创建了...

    一些java常用的工具类

    以下是对"一些java常用的工具类"的详细说明。 首先,工具类通常包含静态方法,这些方法不依赖于类的实例,可以直接调用,减少了对象创建的开销。这些类通常以“Utils”或“Helper”结尾,如Apache Commons Lang中的...

    最最常用的 100 个 Java类分享

    在Java编程中,掌握常用的类能够极大地提高开发效率。这里列出的100个最常用的...以上就是这100个常用Java类的简要介绍,它们在实际开发中扮演着至关重要的角色,理解和熟练使用这些类对于提升Java编程能力至关重要。

    java常用工具类

    "java常用工具类"这个主题涵盖了Java开发中常用的类和方法,这些工具类可以帮助我们简化编程工作,提高代码的可读性和可维护性。在Java中,`java.util`包就是这样一个包含大量工具类的包,提供了很多实用的功能。 1...

    Java类库 java中常用的类 可以参考

    #### 三、Java.lang 包中的常用类 Java.lang 包是 Java 最广泛使用的包之一,其中包含了很多基础且重要的类和接口。下面重点介绍两个非常重要的类——`String` 类和 `StringBuffer` 类: ##### 1. String 类 - **...

    java常用的工具类整理28个

    下面我们将详细探讨Java中28个常用的工具类,主要涉及`IO`相关的开发工具。 1. **java.lang.Math**:这个类提供了许多基础数学函数,如求平方根、最大值、最小值、随机数生成等。 2. **java.util.Arrays**:用于...

    Java常用类.ppt

    Java常用类.pptJava常用类.ppt

    Java常用工具类

    Java常用工具类是Java开发中不可或缺的一部分,它们提供了一系列便捷的方法,帮助开发者高效地处理各种常见任务。在Java中,最著名的工具类库是`java.util`包,它包含了大量实用类,如集合、日期时间、数学计算、...

    java常用集合类总结

    "Java集合类总结" Java集合类是Java语言中的一种重要数据结构,用于存储和管理数据。Java集合类可以分为两种:Collection接口和Map接口。Collection接口有两个子接口:List接口和Set接口。List接口是有序的,可以...

    Java常用类总结

    本文将深入探讨一些关键的Java类,这些类在各种应用程序开发中都发挥着重要作用。 首先,让我们关注`java.util.ArrayList`和`java.util.LinkedList`,它们都是`List`接口的实现,用于存储有序的元素集合。ArrayList...

    Java常用类源码

    在Java编程语言中,了解和研究常用类的源码对于提升编程技能至关重要。Java的类库丰富多样,包含了大量预定义的类,这些类提供了许多基础功能,方便开发者快速构建应用程序。本文将深入探讨几个Java中常用的类,包括...

    java 常用工具类

    Java工具类是Java编程中非常重要的组成部分,它们提供了一系列预定义的方法,可以帮助开发者高效地处理各种常见任务,而无需从头实现。在Java中,最知名的工具类库是`java.util`包,它包含了大量方便实用的类。下面...

    Java常用工具类大全,工作5年精心整理.zip

    "Java常用工具类大全,工作5年精心整理.zip"这个压缩包文件很可能包含了一位有经验的Java开发者在五年工作中积累的各种实用工具类,这些工具类能够极大地提高开发效率,简化代码编写。以下是对可能包含的知识点进行...

Global site tag (gtag.js) - Google Analytics