zoukankan      html  css  js  c++  java
  • 最权威的json自定义格式

    1.封装result,作为返回的对象

    public class Result<T> {
        
        private int code;
        private String msg;
        private T data;
        
        /**
         *  成功时候的调用
         * */
        public static  <T> Result<T> success(T data){
            return new Result<T>(data);
        }
        
        /**
         *  失败时候的调用
         * */
        public static  <T> Result<T> error(CodeMsg codeMsg){
            return new Result<T>(codeMsg);
        }
        

    /**
         * 成功的构造函数
         * @param data
         */
        private Result(T data){
            this.code=000000;//默认000000是成功
            this.msg="SUCCESS";
            this.data = data;
        }
        
        private Result(int code, String msg) {
            this.code = code;
            this.msg = msg;
        }
        /**
         * 失败的构造函数
         * @param code
         * @param msg
         */
        private Result(CodeMsg codeMsg) {
            if(codeMsg != null) {
                this.code = codeMsg.getCode();
                this.msg = codeMsg.getMsg();
            }
        }
     get(),set();
    }

    2.封装CodeMsg,这里面存放定义的code对应的msg

    public class CodeMsg {
        
        private int code;
        private String msg;
        
        //通用的错误码
        public static CodeMsg SUCCESS = new CodeMsg(0, "success");
        public static CodeMsg SERVER_ERROR = new CodeMsg(500100, "服务端异常");
        public static CodeMsg BIND_ERROR = new CodeMsg(500101, "参数校验异常:%s");
        //登录模块 5002XX
        public static CodeMsg SESSION_ERROR = new CodeMsg(500210, "Session不存在或者已经失效");
        public static CodeMsg PASSWORD_EMPTY = new CodeMsg(500211, "登录密码不能为空");
        public static CodeMsg MOBILE_EMPTY = new CodeMsg(500212, "手机号不能为空");
        public static CodeMsg MOBILE_ERROR = new CodeMsg(500213, "手机号格式错误");
        public static CodeMsg MOBILE_NOT_EXIST = new CodeMsg(500214, "手机号不存在");
        public static CodeMsg PASSWORD_ERROR = new CodeMsg(500215, "密码错误");
        
        //商品模块 5003XX
        
        //订单模块 5004XX
        
        //秒杀模块 5005XX
        
        private CodeMsg( ) {
        }
                
        private CodeMsg( int code,String msg ) {
            this.code = code;
            this.msg = msg;
        }
       
        //不定参的构造函数
        public  fillArgs(Object... args) {
            int code = this.code;
            String message = String.format(this.msg, args);
            return new CodeMsg(code, message);
        }

        @Override
        public String toString() {
            return "CodeMsg [code=" + code + ", msg=" + msg + "]";
        }
        get(),set()方法
        
    }
    3.应用实例

     return Result.success(user);

    return Result.error(CodeMsg.MOBILE_ERROR);

  • 相关阅读:
    ios实现程序切入后台,实现后台任务 (转自)
    iOS 设置页面的代码编写
    IOS 关于扬声器和听话筒的设置 ----自己试验过的,可以达到扩音器和听筒播放的效果
    转载自@机智的新手:使用Auto Layout中的VFL(Visual format language)--代码实现自动布局
    web前端基础知识-(六)web框架
    web前端基础知识-(五)jQuery
    web前端基础知识-(四)DOM
    web前端基础知识-(三)JavaScript基本操作
    web前端基础知识-(二)CSS基本操作
    web前端基础知识-(一)html基本操作
  • 原文地址:https://www.cnblogs.com/uzxin/p/11860996.html
Copyright © 2011-2022 走看看