Java数据封装类
来源:互联网 发布:商城 php 编辑:程序博客网 时间:2024/06/06 06:33
项目中用到,比较好用!!
用户前端与后台的交互数据,这个封装类中包含分页、数据、错误码、状态码等信息!!
亲测好用哦!
一个类DataWrapper
public class DataWrapper<T>{ private CallStatusEnum callStatus; private ErrorCodeEnum errorCode; private T data; private int numberPerPage; // 用于分页结果 private int currentPage; private int totalNumber; private int totalPage; private String message ; private String recordUpdateTime ; //redis数据插入时间 public DataWrapper() { callStatus = CallStatusEnum.SUCCEED; errorCode = ErrorCodeEnum.No_Error; } public static <T> DataWrapper<T> createInstance(){ return new DataWrapper<T>() ; } public CallStatusEnum getCallStatus() { return callStatus; } public DataWrapper<T> setCallStatus(CallStatusEnum callStatus) { this.callStatus = callStatus; return this ; } public ErrorCodeEnum getErrorCode() { return errorCode; } public void setErrorCode(ErrorCodeEnum errorCode) { this.errorCode = errorCode; if (!errorCode.equals(ErrorCodeEnum.No_Error)) { this.callStatus = CallStatusEnum.FAILED; } } public T getData() { return data; } public DataWrapper<T> setData(T data) { this.data = data; return this ; } public int getNumberPerPage() { return numberPerPage; } public void setNumberPerPage(int numberPerPage) { this.numberPerPage = numberPerPage; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { this.currentPage = currentPage; } public int getTotalNumber() { return totalNumber; } public void setTotalNumber(int totalNumber) { this.totalNumber = totalNumber; } public int getTotalPage() { return totalPage; } public void setTotalPage(int totalPage) { this.totalPage = totalPage; } public String getMessage() { return message; } public DataWrapper<T> setMessage(String message) { this.message = message; return this ; } public String getRecordUpdateTime() { return recordUpdateTime; } public DataWrapper<T> setRecordUpdateTime(String recordUpdateTime) { this.recordUpdateTime = recordUpdateTime; return this ; } @Override public String toString() { return JSONObject.toJSONString(this) ; }}
两个枚举CallStatusEnum、ErrorCodeEnum
public enum CallStatusEnum implements Serializable { SUCCEED, FAILED,; CallStatusEnum() { }}
public enum ErrorCodeEnum implements Serializable { No_Error("No ERROE!", 0), Error("Unknown error!", 1), NO_SUCH_USER("Can't find username",2), IncorrectCredentials("IncorrectCredentialsException",3), LoginFailed("AuthenticationException",4), USER_EXIST("User already exist in db",5), PASSWORD_ERROR("Error is password",6), REGISTER_FAILED("Register failed",7), PARSE_DATE("Parse Date error",8), ExcessiveAttempts("Try password more than 5 times",9) , NO_ROLE("User has no role!" , 10) , USER_STATE_ERROR("User state error! Disable Login" , 11), USER_IDENTITY_ERROR("User Identity error! Disable Login" , 12), DB_ERROR("database maybe error!" , 13) , WEB_SP_ERROR("from webSp maybe error!" , 14) , MFA_VERIFY_ERROR("mfa verify random code error!" , 15) , MFA_SEND_ERROR("mfa send random code error!" , 16) , MFA_SEND_EXCESSIVE("ask send random code excessive!" , 17), PHONE_NUMBER_ERROR("phone number is empty or error!" , 18), IMAGECODE_ERROR("image code error" , 19), VERIFYCODE_ERROR("telephone verify code incorrect",20); private String label; private Integer code; ErrorCodeEnum() { } ErrorCodeEnum(String label, Integer code) { this.label = label; this.code = code; } public String getLabel() { return label; } public void setLabel(String label) { this.label = label; } public int getCode() { return code; } @Override public String toString() { return code.toString(); } public static ErrorCodeEnum parse(int code) { for (ErrorCodeEnum theEnum : ErrorCodeEnum.values()) { if (theEnum.getCode() == code) { return theEnum; } } return No_Error; }}
阅读全文
1 0
- Java数据封装类
- 基于DWR的Java数据封装类
- Java基本数据对应的封装类
- java数据封装
- Java-封装生成JSON数据和XML数据类
- java 后台封装json数据
- Java数据分页通用封装
- java 17:数据域封装
- java 封装解析 Json数据。
- java 后台封装json数据
- java 后台封装json数据
- 数据分页封装类
- 基本数据封装类
- json数据封装和Java类的映射
- Java 基本数据封装类自动装箱与拆箱
- Java中数据成员的封装
- [java]封装中的小数据 127
- java中将数据封装为JSON包
- Java中+=和-=的意思和作用
- ubuntu 16.04切换到windows 10系统后,耳机没有声音
- maven and eclipse
- 设计模式学习----观察者模式(事件监听实现)
- Zookeeper全解析——Client端(转)
- Java数据封装类
- com.alibaba.druid.pool.GetConnectionTimeoutException:loopWaitCount 0, wait millis 60000,active 50
- Mr.Smile填坑记——startActivityForResult收不到回调
- Html5 播放视频
- 文件管理器
- 147. Sort a linked list using insertion sort
- visualSVN卸载后无法安装之干货
- JVM类加载机制
- 如何在windows下打静默安装包