The encapsulation method of returning data to the front-end page in the project (status code, error message, etc.)

1. Package in the form of Map

  • Here, a data returned to the page is encapsulated in the form of k, v key-value pairs
  • Separately encapsulate errorand okwait for two methods, and each method has a single construction method that can be used, and returns itself, which is convenient for assembling data later
  • putThe method is to put the data to be returned to the page
  • Example: return correctlyreturn R.ok().put("data",返回对象);
public class R extends HashMap<String, Object> {
    
    
	private static final long serialVersionUID = 1L;
	
	public R() {
    
    
		put("code", 0);
		put("msg", "success");
	}
	
	public static R error() {
    
    
		return error(HttpStatus.SC_INTERNAL_SERVER_ERROR, "未知异常,请联系管理员");
	}
	
	public static R error(String msg) {
    
    
		return error(HttpStatus.SC_INTERNAL_SERVER_ERROR, msg);
	}
	
	public static R error(int code, String msg) {
    
    
		R r = new R();
		r.put("code", code);
		r.put("msg", msg);
		return r;
	}

	public static R ok(String msg) {
    
    
		R r = new R();
		r.put("msg", msg);
		return r;
	}
	
	public static R ok(Map<String, Object> map) {
    
    
		R r = new R();
		r.putAll(map);
		return r;
	}
	
	public static R ok() {
    
    
		return new R();
	}

	public R put(String key, Object value) {
    
    
		super.put(key, value);
		return this;
	}
}
  • The json data returned by the page is shown below
{
    
    
	"code": 0,
	"msg": "success",
	"data": [{
    
    
		"id": 1,
		"name": "XXX",
		"parentCid": 0,
		"catLevel": 1,
		"showStatus": 1,
		"sort": 0,
		"icon": null,
		"xUnit": null,
		"xCount": 0,
		"children": []
	}]
}
  • org.apache.httpThe package encapsulates a part of the page status code for us
public interface HttpStatus {
    
    
    int SC_CONTINUE = 100;
    int SC_SWITCHING_PROTOCOLS = 101;
    int SC_PROCESSING = 102;
    int SC_OK = 200;
    int SC_CREATED = 201;
    int SC_ACCEPTED = 202;
    int SC_NON_AUTHORITATIVE_INFORMATION = 203;
    int SC_NO_CONTENT = 204;
    int SC_RESET_CONTENT = 205;
    int SC_PARTIAL_CONTENT = 206;
    int SC_MULTI_STATUS = 207;
    int SC_MULTIPLE_CHOICES = 300;
    int SC_MOVED_PERMANENTLY = 301;
    int SC_MOVED_TEMPORARILY = 302;
    int SC_SEE_OTHER = 303;
    int SC_NOT_MODIFIED = 304;
    int SC_USE_PROXY = 305;
    int SC_TEMPORARY_REDIRECT = 307;
    int SC_BAD_REQUEST = 400;
    int SC_UNAUTHORIZED = 401;
    int SC_PAYMENT_REQUIRED = 402;
    int SC_FORBIDDEN = 403;
    int SC_NOT_FOUND = 404;
    int SC_METHOD_NOT_ALLOWED = 405;
    int SC_NOT_ACCEPTABLE = 406;
    int SC_PROXY_AUTHENTICATION_REQUIRED = 407;
    int SC_REQUEST_TIMEOUT = 408;
    int SC_CONFLICT = 409;
    int SC_GONE = 410;
    int SC_LENGTH_REQUIRED = 411;
    int SC_PRECONDITION_FAILED = 412;
    int SC_REQUEST_TOO_LONG = 413;
    int SC_REQUEST_URI_TOO_LONG = 414;
    int SC_UNSUPPORTED_MEDIA_TYPE = 415;
    int SC_REQUESTED_RANGE_NOT_SATISFIABLE = 416;
    int SC_EXPECTATION_FAILED = 417;
    int SC_INSUFFICIENT_SPACE_ON_RESOURCE = 419;
    int SC_METHOD_FAILURE = 420;
    int SC_UNPROCESSABLE_ENTITY = 422;
    int SC_LOCKED = 423;
    int SC_FAILED_DEPENDENCY = 424;
    int SC_INTERNAL_SERVER_ERROR = 500;
    int SC_NOT_IMPLEMENTED = 501;
    int SC_BAD_GATEWAY = 502;
    int SC_SERVICE_UNAVAILABLE = 503;
    int SC_GATEWAY_TIMEOUT = 504;
    int SC_HTTP_VERSION_NOT_SUPPORTED = 505;
    int SC_INSUFFICIENT_STORAGE = 507;
}

Guess you like

Origin blog.csdn.net/JISOOLUO/article/details/105576125