zoukankan      html  css  js  c++  java
  • restful返回 json数据的JavaBean设计

    
    import com.alibaba.fastjson.JSONObject;
    
    import java.io.Serializable;
    import java.util.Map;
    
    public class ResultEntity implements Serializable {
    
        JSONObject jsonObject;
    
        public JSONObject getJsonObject() {
            return jsonObject;
        }
    
        public void setJsonObject(JSONObject jsonObject) {
            this.jsonObject = jsonObject;
        }
    
        public ResultEntity() {
            this.jsonObject = new JSONObject();
        }
    
        public ResultEntity(JSONObject object) {
            this.jsonObject = object;
        }
    
        public ResultEntity(int code, String message) {
            this();
            this.jsonObject.put("code", code);
            this.jsonObject.put("message", message);
        }
    
        public ResultEntity(int code, String message, String description) {
            this();
            this.jsonObject.put("code", code);
            this.jsonObject.put("message", message);
            if (description != null) {
                this.jsonObject.put("description", description);
            }
        }
    
        public ResultEntity put(String key, Object value) {
            this.jsonObject.put(key, value);
            return this;
        }
    
        public ResultEntity put(Map<String, Object> map) {
            for (String key : map.keySet()) {
                this.jsonObject.put(key, map.get(key));
            }
            return this;
        }
    
        public ResultEntity putNest(String key, Object value) {
            if (!jsonObject.containsKey("data")) {
                JSONObject dataObj = new JSONObject();
                jsonObject.put("data", dataObj);
            }
            this.jsonObject.getJSONObject("data").put(key, value);
            return this;
        }
    
        public ResultEntity putNest(Map<String, Object> map) {
            if (!jsonObject.containsKey("data")) {
                JSONObject dataObj = new JSONObject();
                jsonObject.put("data", dataObj);
            }
            for (String key : map.keySet()) {
                this.jsonObject.getJSONObject("data").put(key, map.get(key));
            }
            return this;
        }
    
        public String toJsonString() {
            return this.jsonObject.toString();
        }
    
        public Map<String, Object> totMap() {
            return this.jsonObject;
        }
    }
    

    调用示例:

    方式一:

    return new ResultEntity(0,"保存成功").putNest("name","张三").putNest("sex","男");
    

    方式二:

    Map<String,Object> map = new HashMap<String,Object>();
    map.putNest("name","张三");
    map.putNest("sex","男");
    
    return new ResultEntity(0,"保存成功").putNest(map);
    

    结果:

    {
        "code":0,
        "message":"保存成功",
        "data":{
              "name":"张三",
              "sex":"男"
        }
    }
    
  • 相关阅读:
    vs2010在进行数据架构比较时报'text lines should not be null'错误
    idea安装2019
    无法获得VMCI驱动程序的版本:句柄无效
    VMware对虚拟机快照进行克隆
    此主机支持Intel VT-x,但Intel VT-x处于禁用状态
    惠普台式机,如何开启虚拟化技术
    eclipse格式化代码快捷键失效
    python之shutil模块
    hadoop中hive常用的交互式操作
    hadoop中hive的属性
  • 原文地址:https://www.cnblogs.com/silfox/p/7700989.html
Copyright © 2011-2022 走看看