Heim >Java >javaLernprogramm >Umgang mit dem einheitlichen SpringBoot-Rückgabeformat
Ich glaube, dass die meisten Back-End-Entwickler in der täglichen Entwicklung eine Schnittstelle zum Front-End benötigen. Wenn Sie das Front-End und das Back-End selbst erstellen, können Sie natürlich spielen, wie Sie möchten, aber wir müssen noch bestimmte Standards erreichen. In Projekten mit Front-End- und Back-End-Trennung muss das vom Back-End zurückgegebene Format benutzerfreundlich und fest sein und darf nicht häufig geändert werden, da es sonst eine große Arbeitsbelastung für die Front-End-Entwickler mit sich bringt. Gemeinsames Rückgabeformat von SpringBoot Controller
Fehlerrückgabe@PostMapping("/test") public String test(){ return "Hello World"; }
Ergebnis des Postboten-Anrufs:
Definieren Sie das RückgabeobjektIch definiere zwei ActionResult-Objekte, um den Rückgabewert zu kapseln, der entsprechend der tatsächlichen Situation Ihres Unternehmens geändert werden kann:@PostMapping("/getUser") public ActionResult getUser(){ User user = new User(); user.setId(UUID.randomUUID().toString()); user.setName("MrDong"); user.setAge(20); return ActionResult.defaultOk(user); }
@PostMapping("/error") public ActionResult error(){ return ActionResult.defaultFail(1000,"服务器异常,请联系管理员"); }Unify Behandlung von Rückgabewerten und AusnahmenImplementierungsprinzip: Es ist erforderlich, die von SpringBoot bereitgestellte ResponseBodyAdvice-Schnittstelle zu implementieren, um die Kapselung einheitlicher Rückgabewerte und Ausnahmebehandlung abzuschließen. Nach der Implementierung dieser Schnittstelle müssen Sie das Objekt nur direkt zurückgeben, wenn der Controller zurückkehrt. Einige, die keinen Rückgabewert benötigen, können direkt void zurückgeben.
package com.wxd.entity; import com.wxd.enums.ResultCodeEnum; import lombok.Data; /** * @ClassName ActionResult * @Description 统一返回值封装 * @Author Mr Dong * @Date 2022/7/26 14:51 */ @Data public class ActionResult { private Integer code; private String msg; private Integer count; private Object data; public static ActionResult defaultOk(Integer code, String msg, Integer count, Object data) { return new ActionResult(code, msg, count, data); } public static ActionResult defaultOk(Integer count, Object data) { return new ActionResult(ResultCodeEnum.RC200, count, data); } public static ActionResult defaultOk(Object data) { return new ActionResult(ResultCodeEnum.RC200, null, data); } public static ActionResult defaultOk() { return new ActionResult(ResultCodeEnum.RC200); } public static ActionResult defaultFail() { return new ActionResult(ResultCodeEnum.RC999); } public static ActionResult defaultFail(Integer code, String msg) { return new ActionResult(code, msg); } public static ActionResult defaultFail(ResultCodeEnum resultCodeEnum) { return new ActionResult(resultCodeEnum); } public ActionResult(Integer code, String msg, Integer count, Object data) { this.code = code; this.msg = msg; this.count = count; this.data = data; } public ActionResult(Integer code, String msg) { this.code = code; this.msg = msg; } public ActionResult(ResultCodeEnum resultCodeEnum) { this.code = resultCodeEnum.getCode(); this.msg = resultCodeEnum.getMessage(); } public ActionResult(ResultCodeEnum resultCodeEnum, Integer count, Object data) { this.code = resultCodeEnum.getCode(); this.msg = resultCodeEnum.getMessage(); this.count = count; this.data = data; } }void hat keinen Rückgabewert
hat einen Rückgabewert
Das obige ist der detaillierte Inhalt vonUmgang mit dem einheitlichen SpringBoot-Rückgabeformat. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!