通用JsonResult,返回格式化json字符串,使用簡單


用法:直接把data放到里面
List<Team_event> data = teamService.selEvent();

JsonResult<String> j1 = new JsonResult(data); //直接把data放到里面了
引入依賴:pom.xml
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.41</version>
</dependency>
返回值示例:
{
    "success": true,
    "message": null,
    "errorCode": "0",
    "errorMsg": "操作成功",
    "total": 0,
    "data": [
        {
            "eventcontent": "街邊攤販占道經營,影響行人交通,造成擁堵。",
            "problem": "街邊攤販占道經營,影響行人交通,造成擁堵。"
        }
    ]
}
詳細代碼:
package com.example.Entity;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * 通用JsonResult
 */
@Data
public class JsonResult<T> {
    private static final long serialVersionUID =-123847128341023033L;
    @JSONField
    private boolean success = true;
    @JSONField
    private String message = null;
    @JSONField
    private String errorCode = "0";
    @JSONField
    private String errorMsg = "";
    @JSONField
    private Integer total = 0;
    @JSONField
    private List<T> data = new ArrayList();

    public JsonResult() {
    }

    /**
     * 當有異常時,直接throw一個實現ErrorCode的異常類
     * 通過global異常處理器,就可以把jsonResult封裝起來,這樣代碼簡潔優美
     * 如果沒有BaseException可以注釋掉這個方法
     */
//    public JsonResult(BaseException exception) {
//        if (exception != null) {
//            success = false;
//            errorCode = exception.getErrorCode();
//            errorMsg = exception.getErrorMsg();
//        }
//    }
    /**
     *  雖然很多人都寫為isSuccess(),但強烈不建議,因為相當於getSuccess()
     *  可以用idea的自動生成下,如果有isSuccess(),就不會生成getSuccess()
     */
    public boolean successFlag() {
        return success;
    }

    public JsonResult(List<T> data) {
        if (data != null && data.size() > 0) {
            this.data = data;
            this.message = "操作成功";
        }else {
            this.message = "操作失敗";
            this.errorCode = "405";
            this.errorMsg = "返回值為null";
        }
    }

    public JsonResult(T data) {
        if (data != null) {
            this.data.add(data);
            this.message = "操作成功";
        }else {
            this.message = "操作失敗";
            this.errorCode = "405";
            this.errorMsg = "返回值為null";
        }
    }
    //  失敗情況的構造  只用errorCode,errorMsg即可
    public JsonResult(String errorCode,String errorMsg) {
        this.success=false;
        this.errorCode=errorCode;
        this.errorMsg=errorMsg;
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM